📄 swarm.space.diffuse2d.protocol.html
字号:
<HTML><HEAD><TITLE>Diffuse2d</TITLE><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.53"><LINKREL="HOME"TITLE="Documentation Set for Swarm 2.1.1"HREF="set.html"><LINKREL="UP"TITLE="Space Library"HREF="swarm.space.sgml.reference.html"><LINKREL="PREVIOUS"TITLE="DblBuffer2d"HREF="swarm.space.dblbuffer2d.protocol.html"><LINKREL="NEXT"TITLE="Discrete2d"HREF="swarm.space.discrete2d.protocol.html"></HEAD><BODYCLASS="REFENTRY"BGCOLOR="#FFFFFF"TEXT="#000000"LINK="#0000FF"VLINK="#840084"ALINK="#0000FF"><DIVCLASS="NAVHEADER"><TABLEWIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><THCOLSPAN="3"ALIGN="center">Documentation Set for Swarm 2.1.1</TH></TR><TR><TDWIDTH="10%"ALIGN="left"VALIGN="bottom"><AHREF="swarm.space.dblbuffer2d.protocol.html">Prev</A></TD><TDWIDTH="80%"ALIGN="center"VALIGN="bottom">Reference X. Space Library</TD><TDWIDTH="10%"ALIGN="right"VALIGN="bottom"><AHREF="swarm.space.discrete2d.protocol.html">Next</A></TD></TR></TABLE><HRALIGN="LEFT"WIDTH="100%"></DIV><H1><ANAME="SWARM.SPACE.DIFFUSE2D.PROTOCOL">Diffuse2d</A></H1><DIVCLASS="REFNAMEDIV"><ANAME="AEN22868"></A><H2>Name</H2>Diffuse2d -- 2d difussion with evaporation.</DIV><DIVCLASS="REFSECT1"><ANAME="AEN22871"></A><H2>Description</H2><P> Discrete 2nd order approximation to 2d diffusion with evaporation. Math is done in integers on the range [0,0x7fff]. </P></DIV><DIVCLASS="REFSECT1"><ANAME="AEN22874"></A><H2>Protocols adopted by Diffuse2d</H2><P> <AHREF="swarm.space.ca2d.protocol.html">Ca2d</A> <AHREF="swarm.defobj.creatable.protocol.html">CREATABLE</A></P></DIV><DIVCLASS="REFSECT1"><ANAME="AEN22879"></A><H2>Methods</H2><DIVCLASS="REFSECT2"><ANAME="AEN22881"></A><H3>Phase: Creating</H3><P></P><UL><LI><DIVCLASS="FUNCSYNOPSIS"><ANAME="SWARM.SPACE.DIFFUSE2D.METHOD.PC.M42"></A><P></P>+ <BCLASS="FUNCPROTOTYPE">create:</B> (id <Zone>)<VARCLASS="PDPARAM">aZone</VAR> <BCLASS="FUNCPROTOTYPE">setSizeX:</B> (unsigned)<VARCLASS="PDPARAM">x</VAR> <BCLASS="FUNCPROTOTYPE">Y:</B> (unsigned)<VARCLASS="PDPARAM">y</VAR> <BCLASS="FUNCPROTOTYPE">setDiffusionConstant:</B> (double)<VARCLASS="PDPARAM">d</VAR> <BCLASS="FUNCPROTOTYPE">setEvaporationRate:</B> (double)<VARCLASS="PDPARAM">e</VAR> <BR> Convenience constructor for Diffuse2d<P></P></DIV></LI><LI><DIVCLASS="FUNCSYNOPSIS"><ANAME="SWARM.SPACE.DIFFUSE2D.METHOD.PC.M51"></A><P></P>+ <BCLASS="FUNCPROTOTYPE">createBegin:</B> (id <Zone>)<VARCLASS="PDPARAM">aZone</VAR> <BR> Set diffusion constant and evaporation rate to 1.0, numStates to 0x7fff.<P></P></DIV></LI><LI><DIVCLASS="FUNCSYNOPSIS"><ANAME="SWARM.SPACE.DIFFUSE2D.METHOD.PC.M548"></A><P></P>- <BCLASS="FUNCPROTOTYPE">initializeLattice</B><BR> Initialize world to 0.<P></P></DIV></LI></UL></DIV><DIVCLASS="REFSECT2"><ANAME="AEN22918"></A><H3>Phase: Setting</H3><P></P><UL><LI><DIVCLASS="FUNCSYNOPSIS"><ANAME="SWARM.SPACE.DIFFUSE2D.METHOD.PS.M734"></A><P></P>- <BCLASS="FUNCPROTOTYPE">setDiffusionConstant:</B> (double)<VARCLASS="PDPARAM">d</VAR> <BR> Set the diffusion constant. Values over 1.0 might not be valid.<P></P></DIV></LI><LI><DIVCLASS="FUNCSYNOPSIS"><ANAME="SWARM.SPACE.DIFFUSE2D.METHOD.PS.M750"></A><P></P>- <BCLASS="FUNCPROTOTYPE">setEvaporationRate:</B> (double)<VARCLASS="PDPARAM">e</VAR> <BR> Set the evaporation rate. Values over 1.0 don't make much sense<P></P></DIV></LI></UL></DIV><DIVCLASS="REFSECT2"><ANAME="AEN22939"></A><H3>Phase: Using</H3><P></P><UL><LI><DIVCLASS="FUNCSYNOPSIS"><ANAME="SWARM.SPACE.DIFFUSE2D.METHOD.PU.M920"></A><P></P>- <BCLASS="FUNCPROTOTYPE">stepRule</B><BR> Run discrete approximation to diffusion. Roughly, it's newHeat = evapRate * (self + diffuseConstant*(nbdavg - self)) where nbdavg is the weighted average of the 8 neighbours. <P></P></DIV></LI></UL></DIV></DIV><DIVCLASS="NAVFOOTER"><HRALIGN="LEFT"WIDTH="100%"><TABLEWIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top"><AHREF="swarm.space.dblbuffer2d.protocol.html">Prev</A></TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="set.html">Home</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top"><AHREF="swarm.space.discrete2d.protocol.html">Next</A></TD></TR><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top">DblBuffer2d</TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="swarm.space.sgml.reference.html">Up</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top">Discrete2d</TD></TR></TABLE></DIV></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -