swisseph
Class TCPlanetPlanet

java.lang.Object
  extended by swisseph.TransitCalculator
      extended by swisseph.TCPlanetPlanet
All Implemented Interfaces:
java.io.Serializable

public class TCPlanetPlanet
extends TransitCalculator
implements java.io.Serializable

This class implements a TransitCalculator for two planets in relative positions or speeds to each other.

You would create a TransitCalculator from this class and use the SwissEph.getTransit() methods to actually calculate a transit, e.g.:

 SwissEph sw = new SwissEph(...);
 ...
 int flags = SweConst.SEFLG_SWIEPH
             SweConst.SEFLG_TRANSIT_LATITUDE |
             SweConst.SEFLG_TRANSIT_SPEED;
 boolean backwards = false;
 
 TransitCalculator tc = new TCPlanetPlanet(
                                  sw,
                                  SweConst.SE_MERCURY,
                                  SweConst.SE_VENUS,
                                  flags,
                                  0.48);
 ...
 double nextTransitUT = sw.getTransitUT(tc, jdUT, backwards);
 
This would calculate the (UT-) date, when Mercury and Venus will have a very different latitudinal speed (and Mercury the higher speed of both...).

See Also:
Serialized Form

Field Summary
 
Fields inherited from class swisseph.TransitCalculator
rollover, rolloverVal
 
Constructor Summary
TCPlanetPlanet(SwissEph sw, int pl1, int pl2, int flags, double offset)
          Creates a new TransitCalculator for relative transits of two different planets to each other with the option for transits over longitudes, latitudes, distance or the speed in any of these directions in the geocentric or topocentric coordinate system, and in tropical or sidereal zodiac system, both with the sum and difference of both planets positions and speeds.
 
Method Summary
protected  double calc(double jdET)
           
protected  double getDegreePrecision(double jd)
           
protected  double getMaxSpeed()
           
protected  double getMinSpeed()
           
 java.lang.Object[] getObjectIdentifiers()
          This returns all the "object identifiers s" used in this TransitCalculator.
 double getOffset()
          This returns the transit degree or other transit value of the relative position or speed of the two planets.
 boolean getRollover()
           
protected  double getTimePrecision(double degPrec)
           
 void setOffset(double value)
          This sets the transit degree or other transit value for the difference or sum of the positions or speeds of both planets.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TCPlanetPlanet

public TCPlanetPlanet(SwissEph sw,
                      int pl1,
                      int pl2,
                      int flags,
                      double offset)
Creates a new TransitCalculator for relative transits of two different planets to each other with the option for transits over longitudes, latitudes, distance or the speed in any of these directions in the geocentric or topocentric coordinate system, and in tropical or sidereal zodiac system, both with the sum and difference of both planets positions and speeds.

Parameters:
sw - A SwissEph object, if you have one available. Can be null.
pl1 - The first planet. Valid planets are SweConst.SE_SUN up to SweConst.SE_INTP_PERG with the exception of SweConst.SE_EARTH.
pl2 - The second planet that will be transited by the first planet.
flags - The calculation type flags (SweConst.SEFLG_TRANSIT_LONGITUDE, SweConst.SEFLG_TRANSIT_LATITUDE or SweConst.SEFLG_TRANSIT_DISTANCE in conjunction with SweConst.SEFLG_TRANSIT_SPEED for transits over a speed value and SweConst.SEFLG_YOGA_TRANSIT to calculate for the SUM of the two positions or speeds instead of the difference). Also flags modifying the basic planet calculations, these are SweConst.SEFLG_TOPOCTR, SweConst.SEFLG_HELCTR and SweConst.SEFLG_SIDEREAL, plus the (optional) ephemeris flags SweConst.SEFLG_MOSEPH, SweConst.SEFLG_SWIEPH or SweConst.SEFLG_JPLEPH.
offset - This is an offset to the exact conjunction transit point. E.g., when the offset is 180 for longitude calculations, you will get the dates, when the two planets are opposite to each other. Note: The offset is related to the FIRST planet, so an offset value of 30 degree will find the transit points, when the FIRST planet will be 30 degrees behind the the position of the second planet.
See Also:
TCPlanet.TCPlanet(SwissEph, int, int, double), SweConst.SEFLG_TRANSIT_LONGITUDE, SweConst.SEFLG_TRANSIT_LATITUDE, SweConst.SEFLG_TRANSIT_DISTANCE, SweConst.SEFLG_TRANSIT_SPEED, SweConst.SEFLG_YOGA_TRANSIT, SweConst.SEFLG_TOPOCTR, SweConst.SEFLG_HELCTR, SweConst.SEFLG_SIDEREAL, SweConst.SEFLG_MOSEPH, SweConst.SEFLG_SWIEPH, SweConst.SEFLG_JPLEPH
Method Detail

getRollover

public boolean getRollover()
Specified by:
getRollover in class TransitCalculator
Returns:
Returns true, if one position value is identical to another position value. E.g., 360 degree is identical to 0 degree in circle angles.
See Also:
TransitCalculator.rolloverVal

setOffset

public void setOffset(double value)
This sets the transit degree or other transit value for the difference or sum of the positions or speeds of both planets. It will be used on the next call to getTransit().

Specified by:
setOffset in class TransitCalculator
Parameters:
value - The offset value.
See Also:
getOffset()

getOffset

public double getOffset()
This returns the transit degree or other transit value of the relative position or speed of the two planets.

Specified by:
getOffset in class TransitCalculator
Returns:
The current offset value.
See Also:
setOffset(double)

getObjectIdentifiers

public java.lang.Object[] getObjectIdentifiers()
This returns all the "object identifiers s" used in this TransitCalculator. It may be the planet number or planet numbers, when calculating planets.

Overrides:
getObjectIdentifiers in class TransitCalculator
Returns:
An array of identifiers identifying the calculated objects.

getMaxSpeed

protected double getMaxSpeed()
Specified by:
getMaxSpeed in class TransitCalculator

getMinSpeed

protected double getMinSpeed()
Specified by:
getMinSpeed in class TransitCalculator

calc

protected double calc(double jdET)
Specified by:
calc in class TransitCalculator

getTimePrecision

protected double getTimePrecision(double degPrec)
Specified by:
getTimePrecision in class TransitCalculator

getDegreePrecision

protected double getDegreePrecision(double jd)
Specified by:
getDegreePrecision in class TransitCalculator

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object