http://nickpisca.com/BLAST/index.php?title=GetThreeClosestObjsFromArray&feed=atom&action=history
GetThreeClosestObjsFromArray - Revision history
2024-03-28T17:28:24Z
Revision history for this page on the wiki
MediaWiki 1.28.1
http://nickpisca.com/BLAST/index.php?title=GetThreeClosestObjsFromArray&diff=146&oldid=prev
Nickpisca: Created page with " global proc string[] GetThreeClosestObjsFromArray(string $MainObj, string $OtherArr[] ) { //Author Nick Pisca 0001d 2009 string $ClosestArr[2]; float $ClosestDis..."
2017-04-22T06:01:50Z
<p>Created page with " global proc string[] GetThreeClosestObjsFromArray(string $MainObj, string $OtherArr[] ) { //Author Nick Pisca 0001d 2009 string $ClosestArr[2]; float $ClosestDis..."</p>
<p><b>New page</b></p><div> global proc string[] GetThreeClosestObjsFromArray(string $MainObj, string $OtherArr[] ) {<br />
//Author Nick Pisca 0001d 2009 <br />
string $ClosestArr[2];<br />
float $ClosestDistArr[2];<br />
float $LocArr[] = `getAttr($MainObj+".translate")`;<br />
vector $LocVec = <<$LocArr[0], $LocArr[1], $LocArr[2]>>;<br />
$ClosestDistArr = {999999999, 999999999, 999999999};<br />
for ($xx=0;$xx<size($OtherArr);$xx++) {<br />
float $OppArr[] = `getAttr($OtherArr[$xx]+".translate")`;<br />
vector $OppVec = <<$OppArr[0], $OppArr[1], $OppArr[2]>>;<br />
vector $Diff = $LocVec - $OppVec;<br />
float $DiffDist = mag($Diff); <br />
int $BiggestIndex = [[GetBiggestFloatIndex]]($ClosestDistArr); <br />
<br />
if ($DiffDist < $ClosestDistArr[$BiggestIndex] && $DiffDist != 0) {<br />
$ClosestDistArr[$BiggestIndex] = $DiffDist;<br />
$ClosestArr[$BiggestIndex] = $OtherArr[$xx];<br />
}<br />
}<br />
return $ClosestArr;<br />
}<br />
<br />
<br />
<br />
<br />
''More information on vector calculations and retrieving location attributes, read pages 14-16, 20, 90-101 in [http://stores.lulu.com/nickpisca YSYT]. <br />
<br />
[[Category:MEL]]</div>
Nickpisca