<?xml version="1.0" encoding="iso-8859-1"?>
<xsi_file type="CompoundNode" name="3D Particle Grid Indice Based" category="" tasks="" author="Stan Smulders" url="http://www.stansmulders.com" formatversion="1.4" compoundversion="1.0" versiontag="" constructionmode="Current" backgroundcolor="9869826">
	<description><![CDATA[Creates a 3D grid of particles based on the sub-indices of the array. The advantage of this compound over the one shipped with XSI is that the grid that is created with this compound is stand-alone. No more shifting of point positions.]]></description>
	<definition>
		<nodes>
			<node type="RescaleNode" index="0">
				<param name="value" type="4" value="0.000000"></param>
				<param name="sourcestart" type="4" value="0.000000"></param>
				<param name="sourceend" type="4" value="1.000000"></param>
				<param name="targetstart" type="4" value="0.000000"></param>
				<param name="targetend" type="4" value="2.000000"></param>
				<param name="clamp" type="11" value="false"></param>
				<portdef name="value" type="4" structure="2" group="0" instance="0" port="0"></portdef>
				<portdef name="sourcestart" type="4" structure="1" group="0" instance="0" port="1"></portdef>
				<portdef name="sourceend" type="4" structure="1" group="0" instance="0" port="2"></portdef>
				<portdef name="targetstart" type="4" structure="1" group="0" instance="0" port="3"></portdef>
				<portdef name="targetend" type="4" structure="1" group="0" instance="0" port="4"></portdef>
				<portdef name="clamp" type="1" structure="1" group="0" instance="0" port="5"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">2064</prop>
					<prop name="posy">719</prop>
					<prop name="state">Collapsed</prop>
				</datablob>
			</node>
			<node type="GetArrayMaximumNode" index="1">
				<param name="array" type="4" value="0.000000"></param>
				<portdef name="array" type="4" structure="2" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">1874</prop>
					<prop name="posy">719</prop>
					<prop name="state">Collapsed</prop>
				</datablob>
			</node>
			<node type="GetArraySubIndicesNode" index="2">
				<param name="array.array_x" type="4" value="0.000000"></param>
				<param name="array.array_y" type="4" value="0.000000"></param>
				<param name="array.array_z" type="4" value="0.000000"></param>
				<portdef name="array" type="16" structure="2" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-627</prop>
					<prop name="posy">515</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="3DVectorToScalarNode" index="3">
				<param name="vector.vector_x" type="4" value="5.000000"></param>
				<param name="vector.vector_y" type="4" value="5.000000"></param>
				<param name="vector.vector_z" type="4" value="5.000000"></param>
				<portdef name="vector" type="16" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-846</prop>
					<prop name="posy">905</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="RoundNode" index="4">
				<param name="function" type="3" value="0"></param>
				<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">-1738</prop>
					<prop name="posy">640</prop>
					<prop name="state">ConnectedOnly</prop>
				</datablob>
			</node>
			<node type="BuildArrayFromConstantNode" index="5">
				<param name="size" type="3" value="1000"></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>
				<portdef name="size" type="2" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="value" type="16" structure="1" group="0" instance="0" port="1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-862</prop>
					<prop name="posy">486</prop>
					<prop name="state">Normal</prop>
				</datablob>
				<comment type="node" state="minimized" wordwrap="false" autoresize="false" background="0" background_alpha="0.000000" title="14876671" title_text="0" offsetx="-7" offsety="-68" sizex="220" sizey="45"><![CDATA[Build the array of Positions. The number of elements is specified by the number of Positions in X, Z and Y]]></comment>
			</node>
			<node type="DivideByScalarNode" index="6">
				<param name="value" type="3" value="0"></param>
				<param name="divideby" type="4" value="100.000000"></param>
				<portdef name="value" type="2" structure="2" group="0" instance="0" port="0"></portdef>
				<portdef name="divideby" type="4" structure="1" group="0" instance="0" port="1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-26</prop>
					<prop name="posy">723</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="MultiplyNode" index="7">
				<param name="value1" type="3" value="1"></param>
				<param name="value2" type="3" value="1"></param>
				<portdef name="value1" type="2" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="value2" type="2" structure="1" group="0" instance="1" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-396</prop>
					<prop name="posy">677</prop>
					<prop name="state">Normal</prop>
				</datablob>
				<comment type="node" state="maximized" wordwrap="false" autoresize="false" background="0" background_alpha="0.000000" title="14876671" title_text="0" offsetx="-4" offsety="-27" sizex="36" sizey="19"><![CDATA[X x Z]]></comment>
			</node>
			<node type="IfNode" index="8">
				<param name="condition" type="11" value="true"></param>
				<portdef name="condition" type="1" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="iftrue" type="4096" structure="1" group="0" instance="0" port="1"></portdef>
				<portdef name="iffalse" type="4096" structure="1" group="0" instance="0" port="2"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">3191</prop>
					<prop name="posy">676</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="IntegerToScalarNode" index="9">
				<param name="integer" type="3" value="0"></param>
				<portdef name="integer" type="2" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">178</prop>
					<prop name="posy">845</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="IntegerToScalarNode" index="10">
				<param name="integer" type="3" value="0"></param>
				<portdef name="integer" type="2" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">163</prop>
					<prop name="posy">1065</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="AddPointNode" index="11">
				<param name="reference" type="31" value="Self"></param>
				<param name="positions1.positions1_x" type="4" value="0.000000"></param>
				<param name="positions1.positions1_y" type="4" value="0.000000"></param>
				<param name="positions1.positions1_z" type="4" value="0.000000"></param>
				<param_ext name="reference" type="31" value="Self"></param_ext>
				<portdef name="positions1" type="16" structure="2" group="1" instance="0" port="0"></portdef>
				<portdef name="inname" type="8192" structure="1" group="3" instance="0" port="0"></portdef>
				<portdef name="oncreation1" type="4096" structure="1" group="4" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">2998</prop>
					<prop name="posy">696</prop>
					<prop name="state">Normal</prop>
				</datablob>
				<comment type="node" state="minimized" wordwrap="false" autoresize="false" background="0" background_alpha="0.000000" title="14876671" title_text="0" offsetx="-21" offsety="-76" sizex="176" sizey="45"><![CDATA[Add Points we receive as an array of Positions all Positioned at (0,0,0)]]></comment>
			</node>
			<node type="ModuloNode" index="12">
				<param name="value" type="3" value="0"></param>
				<param name="moduloby" type="3" value="100"></param>
				<portdef name="value" type="2" structure="2" group="0" instance="0" port="0"></portdef>
				<portdef name="moduloby" type="2" structure="1" group="0" instance="0" port="1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-159</prop>
					<prop name="posy">566</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="IntegerToScalarNode" index="13">
				<param name="integer" type="3" value="0"></param>
				<portdef name="integer" type="2" structure="2" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">180</prop>
					<prop name="posy">764</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="ModuloNode" index="14">
				<param name="value" type="3" value="0"></param>
				<param name="moduloby" type="3" value="100"></param>
				<portdef name="value" type="2" structure="2" group="0" instance="0" port="0"></portdef>
				<portdef name="moduloby" type="2" structure="1" group="0" instance="0" port="1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">60</prop>
					<prop name="posy">573</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="DivideByScalarNode" index="15">
				<param name="value" type="3" value="0"></param>
				<param name="divideby" type="4" value="100.000000"></param>
				<portdef name="value" type="2" structure="2" group="0" instance="0" port="0"></portdef>
				<portdef name="divideby" type="4" structure="1" group="0" instance="0" port="1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-10</prop>
					<prop name="posy">894</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="IntegerToScalarNode" index="16">
				<param name="integer" type="3" value="0"></param>
				<portdef name="integer" type="2" structure="2" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">167</prop>
					<prop name="posy">990</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="MultiplyByScalarNode" index="17">
				<param name="value" type="4" value="0.000000"></param>
				<param name="factor" type="4" value="8.000000"></param>
				<portdef name="value" type="4" structure="2" 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">568</prop>
					<prop name="posy">988</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="IntegerNode" index="18">
				<param name="value" type="3" value="3"></param>
				<portdef name="value" type="2" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-1147</prop>
					<prop name="posy">727</prop>
					<prop name="state">Normal</prop>
				</datablob>
				<comment type="node" state="minimized" wordwrap="false" autoresize="false" background="0" background_alpha="0.000000" title="14876671" title_text="0" offsetx="-4" offsety="-25" sizex="18" sizey="19"><![CDATA[Z]]></comment>
			</node>
			<node type="IntegerToScalarNode" index="19">
				<param name="integer" type="3" value="0"></param>
				<portdef name="integer" type="2" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-201</prop>
					<prop name="posy">662</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="MultiplyNode" index="20">
				<param name="value1" type="3" value="10"></param>
				<param name="value2" type="3" value="10"></param>
				<param name="value3" type="3" value="1"></param>
				<portdef name="value1" type="2" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="value2" type="2" structure="1" group="0" instance="1" port="0"></portdef>
				<portdef name="value3" type="2" structure="1" group="0" instance="2" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-986</prop>
					<prop name="posy">682</prop>
					<prop name="state">Normal</prop>
				</datablob>
				<comment type="node" state="maximized" wordwrap="false" autoresize="false" background="0" background_alpha="0.000000" title="14876671" title_text="0" offsetx="-36" offsety="-51" sizex="166" sizey="45"><![CDATA[The total number of Point is the number of Points in X Times Z Times Y]]></comment>
			</node>
			<node type="MultiplyByScalarNode" index="21">
				<param name="value" type="4" value="0.000000"></param>
				<param name="factor" type="4" value="8.000000"></param>
				<portdef name="value" type="4" structure="2" 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">584</prop>
					<prop name="posy">770</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="IntegerNode" index="22">
				<param name="value" type="3" value="3"></param>
				<portdef name="value" type="2" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-1142</prop>
					<prop name="posy">659</prop>
					<prop name="state">Normal</prop>
				</datablob>
				<comment type="node" state="minimized" wordwrap="false" autoresize="false" background="0" background_alpha="0.000000" title="14876671" title_text="0" offsetx="-3" offsety="-29" sizex="19" sizey="19"><![CDATA[X]]></comment>
			</node>
			<node type="IntegerNode" index="23">
				<param name="value" type="3" value="3"></param>
				<portdef name="value" type="2" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-1146</prop>
					<prop name="posy">809</prop>
					<prop name="state">Normal</prop>
				</datablob>
				<comment type="node" state="minimized" wordwrap="false" autoresize="false" background="0" background_alpha="0.000000" title="14876671" title_text="0" offsetx="-6" offsety="-29" sizex="22" sizey="19"><![CDATA[Y]]></comment>
			</node>
			<node type="3DVectorNode" index="24">
				<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>
				<portdef name="value" type="16" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-1015</prop>
					<prop name="posy">526</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="ScalarTo3DVectorNode" index="25">
				<param name="x" type="4" value="0.000000"></param>
				<param name="y" type="4" value="0.000000"></param>
				<param name="z" type="4" value="0.000000"></param>
				<portdef name="x" type="4" structure="2" group="0" instance="0" port="0"></portdef>
				<portdef name="y" type="4" structure="2" group="0" instance="0" port="1"></portdef>
				<portdef name="z" type="4" structure="2" group="0" instance="0" port="2"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">788</prop>
					<prop name="posy">702</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="IntegerToScalarNode" index="26">
				<param name="integer" type="3" value="0"></param>
				<portdef name="integer" type="2" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-229</prop>
					<prop name="posy">924</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="MultiplyByScalarNode" index="27">
				<param name="value" type="4" value="0.000000"></param>
				<param name="factor" type="4" value="1.000000"></param>
				<portdef name="value" type="4" structure="2" 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">576</prop>
					<prop name="posy">611</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="IntegerToScalarNode" index="28">
				<param name="integer" type="3" value="0"></param>
				<portdef name="integer" type="2" structure="2" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">180</prop>
					<prop name="posy">582</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="PassThroughNode" index="29">
				<param name="in" type="4" value="8.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">-476</prop>
					<prop name="posy">836</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="PassThroughNode" index="30">
				<param name="in" type="4" value="8.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">-478</prop>
					<prop name="posy">914</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="PassThroughNode" index="31">
				<param name="in" type="4" value="8.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">-477</prop>
					<prop name="posy">977</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="DivideByScalarNode" index="32">
				<param name="value" type="4" value="0.000000"></param>
				<param name="divideby" type="4" value="1.000000"></param>
				<portdef name="value" type="4" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="divideby" type="4" structure="1" group="0" instance="0" port="1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">402</prop>
					<prop name="posy">845</prop>
					<prop name="state">ConnectedOnly</prop>
				</datablob>
			</node>
			<node type="DivideByScalarNode" index="33">
				<param name="value" type="4" value="0.000000"></param>
				<param name="divideby" type="4" value="1.000000"></param>
				<portdef name="value" type="4" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="divideby" type="4" structure="1" group="0" instance="0" port="1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">303</prop>
					<prop name="posy">650</prop>
					<prop name="state">ConnectedOnly</prop>
				</datablob>
			</node>
			<node type="3DVectorToScalarNode" index="36">
				<param name="vector.vector_x" type="4" value="6.000000"></param>
				<param name="vector.vector_y" type="4" value="6.000000"></param>
				<param name="vector.vector_z" type="4" value="6.000000"></param>
				<portdef name="vector" type="16" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-1530</prop>
					<prop name="posy">716</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="RoundNode" index="37">
				<param name="function" type="3" value="0"></param>
				<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">-1737</prop>
					<prop name="posy">715</prop>
					<prop name="state">ConnectedOnly</prop>
				</datablob>
			</node>
			<node type="RoundNode" index="38">
				<param name="function" type="3" value="0"></param>
				<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">-1735</prop>
					<prop name="posy">813</prop>
					<prop name="state">ConnectedOnly</prop>
				</datablob>
			</node>
			<node type="ScalarTo3DVectorNode" index="39">
				<param name="x" type="4" value="0.000000"></param>
				<param name="y" type="4" value="0.000000"></param>
				<param name="z" type="4" value="2.642000"></param>
				<portdef name="x" type="4" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="y" type="4" structure="1" group="0" instance="0" port="1"></portdef>
				<portdef name="z" type="4" structure="1" group="0" instance="0" port="2"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">1241</prop>
					<prop name="posy">681</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="PassThroughNode" index="40">
				<param name="in" type="3" value="0"></param>
				<portdef name="in" type="2" structure="2" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-317</prop>
					<prop name="posy">561</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="AddNode" index="41">
				<param name="value1" type="3" value="0"></param>
				<param name="value2" type="3" value="0"></param>
				<portdef name="value1" type="2" structure="2" group="0" instance="0" port="0"></portdef>
				<portdef name="value2" type="2" structure="1" group="0" instance="1" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-432</prop>
					<prop name="posy">464</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="InsertInArrayNode" index="42">
				<param name="index" type="3" value="0"></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 name="array.array_x" type="4" value="0.000000"></param>
				<param name="array.array_y" type="4" value="0.000000"></param>
				<param name="array.array_z" type="4" value="0.000000"></param>
				<portdef name="index" type="2" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="value" type="16" structure="1" group="0" instance="0" port="1"></portdef>
				<portdef name="array" type="16" structure="2" group="0" instance="0" port="2"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">1471</prop>
					<prop name="posy">682</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="GetArrayMaximumNode" index="43">
				<param name="array" type="4" value="0.000000"></param>
				<portdef name="array" type="4" structure="2" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">1042</prop>
					<prop name="posy">706</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="3DVectorToScalarNode" index="44">
				<param name="vector.vector_x" type="4" value="0.000000"></param>
				<param name="vector.vector_y" type="4" value="0.000000"></param>
				<param name="vector.vector_z" type="4" value="0.000000"></param>
				<portdef name="vector" type="16" structure="2" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">1669</prop>
					<prop name="posy">689</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="GetArrayMaximumNode" index="45">
				<param name="array" type="4" value="0.000000"></param>
				<portdef name="array" type="4" structure="2" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">1878</prop>
					<prop name="posy">759</prop>
					<prop name="state">Collapsed</prop>
				</datablob>
			</node>
			<node type="ScalarTo3DVectorNode" index="46">
				<param name="x" type="4" value="0.000000"></param>
				<param name="y" type="4" value="0.000000"></param>
				<param name="z" type="4" value="0.000000"></param>
				<portdef name="x" type="4" structure="2" group="0" instance="0" port="0"></portdef>
				<portdef name="y" type="4" structure="2" group="0" instance="0" port="1"></portdef>
				<portdef name="z" type="4" structure="2" group="0" instance="0" port="2"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">2189</prop>
					<prop name="posy">682</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="GetArrayMaximumNode" index="47">
				<param name="array" type="4" value="0.000000"></param>
				<portdef name="array" type="4" structure="2" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">1876</prop>
					<prop name="posy">680</prop>
					<prop name="state">Collapsed</prop>
				</datablob>
			</node>
			<node type="RescaleNode" index="48">
				<param name="value" type="4" value="0.000000"></param>
				<param name="sourcestart" type="4" value="0.000000"></param>
				<param name="sourceend" type="4" value="1.000000"></param>
				<param name="targetstart" type="4" value="0.000000"></param>
				<param name="targetend" type="4" value="2.000000"></param>
				<param name="clamp" type="11" value="false"></param>
				<portdef name="value" type="4" structure="2" group="0" instance="0" port="0"></portdef>
				<portdef name="sourcestart" type="4" structure="1" group="0" instance="0" port="1"></portdef>
				<portdef name="sourceend" type="4" structure="1" group="0" instance="0" port="2"></portdef>
				<portdef name="targetstart" type="4" structure="1" group="0" instance="0" port="3"></portdef>
				<portdef name="targetend" type="4" structure="1" group="0" instance="0" port="4"></portdef>
				<portdef name="clamp" type="1" structure="1" group="0" instance="0" port="5"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">2066</prop>
					<prop name="posy">764</prop>
					<prop name="state">Collapsed</prop>
				</datablob>
			</node>
			<node type="DivideByScalarNode" index="49">
				<param name="value" type="4" value="0.000000"></param>
				<param name="divideby" type="4" value="1.000000"></param>
				<portdef name="value" type="4" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="divideby" type="4" structure="1" group="0" instance="0" port="1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">396</prop>
					<prop name="posy">1051</prop>
					<prop name="state">ConnectedOnly</prop>
				</datablob>
			</node>
			<node type="AddNode" index="50">
				<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>
				<portdef name="value1" type="16" structure="2" group="0" instance="0" port="0"></portdef>
				<portdef name="value2" type="16" structure="1" group="0" instance="1" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">2822</prop>
					<prop name="posy">687</prop>
					<prop name="state">Normal</prop>
				</datablob>
				<comment type="node" state="minimized" wordwrap="true" autoresize="true" background="0" background_alpha="0.000000" title="14876671" title_text="0" offsetx="-3" offsety="-15" sizex="152" sizey="19"><![CDATA[Setting the origin of the Grid.]]></comment>
			</node>
			<node type="RescaleNode" index="51">
				<param name="value" type="4" value="0.000000"></param>
				<param name="sourcestart" type="4" value="0.000000"></param>
				<param name="sourceend" type="4" value="1.000000"></param>
				<param name="targetstart" type="4" value="0.000000"></param>
				<param name="targetend" type="4" value="2.000000"></param>
				<param name="clamp" type="11" value="false"></param>
				<portdef name="value" type="4" structure="2" group="0" instance="0" port="0"></portdef>
				<portdef name="sourcestart" type="4" structure="1" group="0" instance="0" port="1"></portdef>
				<portdef name="sourceend" type="4" structure="1" group="0" instance="0" port="2"></portdef>
				<portdef name="targetstart" type="4" structure="1" group="0" instance="0" port="3"></portdef>
				<portdef name="targetend" type="4" structure="1" group="0" instance="0" port="4"></portdef>
				<portdef name="clamp" type="1" structure="1" group="0" instance="0" port="5"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">2065</prop>
					<prop name="posy">679</prop>
					<prop name="state">Collapsed</prop>
				</datablob>
			</node>
			<node type="IfNode" index="52">
				<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="2" group="0" instance="0" port="1"></portdef>
				<portdef name="iffalse" type="16" structure="2" group="0" instance="0" port="2"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">2729</prop>
					<prop name="posy">671</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="SubtractNode" index="53">
				<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="2" group="0" instance="0" port="1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">2593</prop>
					<prop name="posy">625</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="GetArrayAverageNode" index="54">
				<param name="array.array_x" type="4" value="0.000000"></param>
				<param name="array.array_y" type="4" value="0.000000"></param>
				<param name="array.array_z" type="4" value="0.000000"></param>
				<portdef name="array" type="16" structure="2" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">2412</prop>
					<prop name="posy">624</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<comment type="group" state="maximized" wordwrap="true" autoresize="false" background="0" background_alpha="0.100000" title="14876671" title_text="0" offsetx="1644" offsety="637" sizex="720" sizey="168"><![CDATA[Setting the Exact size of the Grid by using the rescale node and the Size values as a max, then interpolating the array between 0 and the Size value.]]></comment>
			<comment type="group" state="maximized" wordwrap="true" autoresize="false" background="0" background_alpha="0.100000" title="14876671" title_text="0" offsetx="2399" offsety="580" sizex="304" sizey="139"><![CDATA[Center the grid by subtracting the average of the points 
The average is always the center.]]></comment>
			<comment type="node" state="minimized" wordwrap="false" autoresize="false" background="0" background_alpha="0.000000" title="14876671" title_text="0" offsetx="20" offsety="794" sizex="387" sizey="128"><![CDATA[Index in X = (ID % ( #X x #Z ) ) % #X
Index in Y = ID / ( #X x #Z )
Index in Z = (ID % ( #X x #Z ) ) / #X


Where 
o   % is the modulo or remainder of the integer division
o   #X, #Y are the number of rows in X and Z respectively
o   ID is the index of the Point]]></comment>
			<comment type="group" state="maximized" wordwrap="true" autoresize="false" background="0" background_alpha="0.100000" title="14876671" title_text="0" offsetx="1022" offsety="637" sizex="607" sizey="166"><![CDATA[Find the largest Z value and set that as the new value of the 0 indice, to ensure correct positioning.]]></comment>
		</nodes>
		<exposed_ports>
			<port index="3" portname="vector" username="Size_in_Units" basename="Size in Units" portlabel="Size in Units" exposetype="single"> </port>
			<port index="8" portname="condition" username="Enable_Grid" basename="Enable Grid" portlabel="Enable Grid" exposetype="single"> </port>
			<port index="8" portname="result" username="Execute" basename="Execute" portlabel="Execute" exposetype="single"> </port>
			<port index="11" portname="oncreation1" username="Execute_on_Creation" basename="Execute on Creation" portlabel="Execute on Creation" exposetype="all_instances"> </port>
			<port index="36" portname="vector" username="Particles_per_Axis" basename="Particles per Axis" portlabel="Particles per Axis" exposetype="single"> </port>
			<port index="50" portname="value2" username="Grid_Origin" basename="Grid Origin" portlabel="Grid Origin" exposetype="single"> </port>
			<port index="52" portname="condition" username="Center_Grid" basename="Center Grid" portlabel="Center Grid" exposetype="single"> </port>
		</exposed_ports>
		<connections>
			<cnx from_node="37" from_port="integer" to_node="18" to_port="value"> </cnx>
			<cnx from_node="36" from_port="y" to_node="37" to_port="value"> </cnx>
			<cnx from_node="36" from_port="x" to_node="4" to_port="value"> </cnx>
			<cnx from_node="36" from_port="z" to_node="38" to_port="value"> </cnx>
			<cnx from_node="45" from_port="max" to_node="48" to_port="sourceend"> </cnx>
			<cnx from_node="39" from_port="vector" to_node="42" to_port="value"> </cnx>
			<cnx from_node="40" from_port="out" to_node="15" to_port="value"> </cnx>
			<cnx from_node="40" from_port="out" to_node="12" to_port="value"> </cnx>
			<cnx from_node="46" from_port="vector" to_node="54" to_port="array"> </cnx>
			<cnx from_node="46" from_port="vector" to_node="53" to_port="second"> </cnx>
			<cnx from_node="46" from_port="vector" to_node="52" to_port="iffalse"> </cnx>
			<cnx from_node="43" from_port="max" to_node="39" to_port="z"> </cnx>
			<cnx from_node="42" from_port="result" to_node="44" to_port="vector"> </cnx>
			<cnx from_node="41" from_port="result" to_node="40" to_port="in"> </cnx>
			<cnx from_node="38" from_port="integer" to_node="23" to_port="value"> </cnx>
			<cnx from_node="44" from_port="x" to_node="51" to_port="value"> </cnx>
			<cnx from_node="44" from_port="x" to_node="47" to_port="array"> </cnx>
			<cnx from_node="44" from_port="y" to_node="1" to_port="array"> </cnx>
			<cnx from_node="44" from_port="y" to_node="0" to_port="value"> </cnx>
			<cnx from_node="44" from_port="z" to_node="45" to_port="array"> </cnx>
			<cnx from_node="44" from_port="z" to_node="48" to_port="value"> </cnx>
			<cnx from_node="50" from_port="result" to_node="11" to_port="positions1"> </cnx>
			<cnx from_node="49" from_port="result" to_node="17" to_port="factor"> </cnx>
			<cnx from_node="48" from_port="result" to_node="46" to_port="z"> </cnx>
			<cnx from_node="47" from_port="max" to_node="51" to_port="sourceend"> </cnx>
			<cnx from_node="51" from_port="result" to_node="46" to_port="x"> </cnx>
			<cnx from_node="52" from_port="result" to_node="50" to_port="value1"> </cnx>
			<cnx from_node="54" from_port="result" to_node="53" to_port="first"> </cnx>
			<cnx from_node="53" from_port="result" to_node="52" to_port="iftrue"> </cnx>
			<cnx from_node="4" from_port="integer" to_node="22" to_port="value"> </cnx>
			<cnx from_node="5" from_port="array" to_node="2" to_port="array"> </cnx>
			<cnx from_node="7" from_port="result" to_node="26" to_port="integer"> </cnx>
			<cnx from_node="7" from_port="result" to_node="12" to_port="moduloby"> </cnx>
			<cnx from_node="6" from_port="result" to_node="13" to_port="integer"> </cnx>
			<cnx from_node="15" from_port="result" to_node="16" to_port="integer"> </cnx>
			<cnx from_node="14" from_port="result" to_node="28" to_port="integer"> </cnx>
			<cnx from_node="13" from_port="scalar" to_node="21" to_port="value"> </cnx>
			<cnx from_node="9" from_port="scalar" to_node="32" to_port="divideby"> </cnx>
			<cnx from_node="11" from_port="add" to_node="8" to_port="iftrue"> </cnx>
			<cnx from_node="10" from_port="scalar" to_node="49" to_port="divideby"> </cnx>
			<cnx from_node="16" from_port="scalar" to_node="17" to_port="value"> </cnx>
			<cnx from_node="12" from_port="result" to_node="14" to_port="value"> </cnx>
			<cnx from_node="12" from_port="result" to_node="6" to_port="value"> </cnx>
			<cnx from_node="18" from_port="result" to_node="20" to_port="value1"> </cnx>
			<cnx from_node="18" from_port="result" to_node="7" to_port="value2"> </cnx>
			<cnx from_node="18" from_port="result" to_node="9" to_port="integer"> </cnx>
			<cnx from_node="17" from_port="result" to_node="43" to_port="array"> </cnx>
			<cnx from_node="17" from_port="result" to_node="25" to_port="z"> </cnx>
			<cnx from_node="22" from_port="result" to_node="20" to_port="value2"> </cnx>
			<cnx from_node="22" from_port="result" to_node="7" to_port="value1"> </cnx>
			<cnx from_node="22" from_port="result" to_node="14" to_port="moduloby"> </cnx>
			<cnx from_node="22" from_port="result" to_node="19" to_port="integer"> </cnx>
			<cnx from_node="23" from_port="result" to_node="20" to_port="value3"> </cnx>
			<cnx from_node="23" from_port="result" to_node="10" to_port="integer"> </cnx>
			<cnx from_node="20" from_port="result" to_node="5" to_port="size"> </cnx>
			<cnx from_node="19" from_port="scalar" to_node="33" to_port="divideby"> </cnx>
			<cnx from_node="19" from_port="scalar" to_node="6" to_port="divideby"> </cnx>
			<cnx from_node="21" from_port="result" to_node="25" to_port="y"> </cnx>
			<cnx from_node="25" from_port="vector" to_node="42" to_port="array"> </cnx>
			<cnx from_node="24" from_port="result" to_node="5" to_port="value"> </cnx>
			<cnx from_node="31" from_port="out" to_node="49" to_port="value"> </cnx>
			<cnx from_node="30" from_port="out" to_node="32" to_port="value"> </cnx>
			<cnx from_node="29" from_port="out" to_node="33" to_port="value"> </cnx>
			<cnx from_node="27" from_port="result" to_node="25" to_port="x"> </cnx>
			<cnx from_node="32" from_port="result" to_node="21" to_port="factor"> </cnx>
			<cnx from_node="33" from_port="result" to_node="27" to_port="factor"> </cnx>
			<cnx from_node="26" from_port="scalar" to_node="15" to_port="divideby"> </cnx>
			<cnx from_node="28" from_port="scalar" to_node="27" to_port="value"> </cnx>
			<cnx from_node="2" from_port="indices" to_node="41" to_port="value1"> </cnx>
			<cnx from_node="3" from_port="z" to_node="31" to_port="in"> </cnx>
			<cnx from_node="3" from_port="x" to_node="29" to_port="in"> </cnx>
			<cnx from_node="3" from_port="y" to_node="30" to_port="in"> </cnx>
			<cnx from_node="3" from_port="x" to_node="51" to_port="targetend"> </cnx>
			<cnx from_node="3" from_port="y" to_node="0" to_port="targetend"> </cnx>
			<cnx from_node="3" from_port="z" to_node="48" to_port="targetend"> </cnx>
			<cnx from_node="0" from_port="result" to_node="46" to_port="y"> </cnx>
			<cnx from_node="1" from_port="max" to_node="0" to_port="sourceend"> </cnx>
		</connections>
		<layout>
			<item type="input" name="Enable_Grid"> </item>
			<item type="input" name="Particles_per_Axis" min="0" max="0"> </item>
			<item type="input" name="Size_in_Units"> </item>
			<item type="input" name="Center_Grid"> </item>
			<item type="input" name="Grid_Origin"> </item>
			<item type="input" name="Execute_on_Creation" min="0" max="0"> </item>
			<item type="output" name="Execute"> </item>
		</layout>
	</definition>
</xsi_file>
