Difference between revisions of "Oolite JavaScript Reference: SystemInfo"

From Elite Wiki
(Added the systemInfo object)
 
(Added systemsInRange)
Line 23: Line 23:
 
function '''distanceToSystem'''(SystenInfo) : Number
 
function '''distanceToSystem'''(SystenInfo) : Number
 
Returns the distance in light year to the other SystemInfo.
 
Returns the distance in light year to the other SystemInfo.
  +
  +
=== <code>systemsInRange</code> ===
  +
function '''systemsInRange'''(Number) : Array
  +
Returns an array of SystemInfos in range. When no distance is defined, 7 is assumed.
   
   

Revision as of 15:30, 30 January 2010

Prototype: Object

This class was added in Oolite test release 1.74.

SystemInfo objects provide information about a specific system.

Properties

coordinates

coordinates : Vector (read-only)

The coordinates of the system in light years. e.g. for Lave: (8, 69.2, 0). The z component is always zero.

galaxyID

galaxyID : Number (read/write nonnegative integer)

The ID number of the galaxy.

systemID

systemID : Number (read/write nonnegative integer)

The ID number of the system.


Methods

distanceToSystem

function distanceToSystem(SystenInfo) : Number

Returns the distance in light year to the other SystemInfo.

systemsInRange

function systemsInRange(Number) : Array

Returns an array of SystemInfos in range. When no distance is defined, 7 is assumed.


Static methods

filteredSystems

function filteredSystems(this : Object, predicate : Function ) : Array of SystemInfo

A list of the SystemInfos for which predicate returns true. Example:

SystemInfo.systemsInRange = function(range) 
{ 
   if (range === undefined) 
   { 
       range = 7; 
   } 
   
   var thisSystem = system.info; 
   return SystemInfo.filteredSystems(this, function(other) 
   { 
       return (other !== thisSystem) && (thisSystem.distanceToSystem(other) <= range); 
   }); 
}