org.apache.xalan.lib
Class ExsltMath

java.lang.Object
  extended byorg.apache.xalan.lib.ExsltBase
      extended byorg.apache.xalan.lib.ExsltMath

public class ExsltMath
extends ExsltBase

This class contains EXSLT math extension functions. It is accessed by specifying a namespace URI as follows:

    xmlns:math="http://exslt.org/math"
 
The documentation for each function has been copied from the relevant EXSLT Implementer page.

See Also:
EXSLT

Field Summary
private static String E
           
private static String LN10
           
private static String LN2
           
private static String LOG2E
           
private static String PI
           
private static String SQRRT2
           
private static String SQRT1_2
           
 
Constructor Summary
ExsltMath()
           
 
Method Summary
static double abs(double num)
          The math:abs function returns the absolute value of a number.
static double acos(double num)
          The math:acos function returns the arccosine value of a number.
static double asin(double num)
          The math:asin function returns the arcsine value of a number.
static double atan(double num)
          The math:atan function returns the arctangent value of a number.
static double atan2(double num1, double num2)
          The math:atan2 function returns the angle ( in radians ) from the X axis to a point (y,x).
static double constant(String name, double precision)
          The math:constant function returns the specified constant to a set precision.
static double cos(double num)
          The math:cos function returns cosine of the passed argument.
static double exp(double num)
          The math:exp function returns e (the base of natural logarithms) raised to a power.
static org.w3c.dom.NodeList highest(org.w3c.dom.NodeList nl)
          The math:highest function returns the nodes in the node set whose value is the maximum value for the node set.
static double log(double num)
          The math:log function returns the natural logarithm of a number.
static org.w3c.dom.NodeList lowest(org.w3c.dom.NodeList nl)
          The math:lowest function returns the nodes in the node set whose value is the minimum value for the node set.
static double max(org.w3c.dom.NodeList nl)
          The math:max function returns the maximum value of the nodes passed as the argument.
static double min(org.w3c.dom.NodeList nl)
          The math:min function returns the minimum value of the nodes passed as the argument.
static double power(double num1, double num2)
          The math:power function returns the value of a base expression taken to a specified power.
static double random()
          The math:random function returns a random number from 0 to 1.
static double sin(double num)
          The math:sin function returns the sine of the number.
static double sqrt(double num)
          The math:sqrt function returns the square root of a number.
static double tan(double num)
          The math:tan function returns the tangent of the number passed as an argument.
 
Methods inherited from class org.apache.xalan.lib.ExsltBase
toNumber, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PI

private static String PI

E

private static String E

SQRRT2

private static String SQRRT2

LN2

private static String LN2

LN10

private static String LN10

LOG2E

private static String LOG2E

SQRT1_2

private static String SQRT1_2
Constructor Detail

ExsltMath

public ExsltMath()
Method Detail

max

public static double max(org.w3c.dom.NodeList nl)
The math:max function returns the maximum value of the nodes passed as the argument. The maximum value is defined as follows. The node set passed as an argument is sorted in descending order as it would be by xsl:sort with a data type of number. The maximum is the result of converting the string value of the first node in this sorted list to a number using the number function.

If the node set is empty, or if the result of converting the string values of any of the nodes to a number is NaN, then NaN is returned.

Parameters:
nl - The NodeList for the node-set to be evaluated.
Returns:
the maximum value found, NaN if any node cannot be converted to a number.
See Also:
EXSLT

min

public static double min(org.w3c.dom.NodeList nl)
The math:min function returns the minimum value of the nodes passed as the argument. The minimum value is defined as follows. The node set passed as an argument is sorted in ascending order as it would be by xsl:sort with a data type of number. The minimum is the result of converting the string value of the first node in this sorted list to a number using the number function.

If the node set is empty, or if the result of converting the string values of any of the nodes to a number is NaN, then NaN is returned.

Parameters:
nl - The NodeList for the node-set to be evaluated.
Returns:
the minimum value found, NaN if any node cannot be converted to a number.
See Also:
EXSLT

highest

public static org.w3c.dom.NodeList highest(org.w3c.dom.NodeList nl)
The math:highest function returns the nodes in the node set whose value is the maximum value for the node set. The maximum value for the node set is the same as the value as calculated by math:max. A node has this maximum value if the result of converting its string value to a number as if by the number function is equal to the maximum value, where the equality comparison is defined as a numerical comparison using the = operator.

If any of the nodes in the node set has a non-numeric value, the math:max function will return NaN. The definition numeric comparisons entails that NaN != NaN. Therefore if any of the nodes in the node set has a non-numeric value, math:highest will return an empty node set.

Parameters:
nl - The NodeList for the node-set to be evaluated.
Returns:
node-set with nodes containing the maximum value found, an empty node-set if any node cannot be converted to a number.

lowest

public static org.w3c.dom.NodeList lowest(org.w3c.dom.NodeList nl)
The math:lowest function returns the nodes in the node set whose value is the minimum value for the node set. The minimum value for the node set is the same as the value as calculated by math:min. A node has this minimum value if the result of converting its string value to a number as if by the number function is equal to the minimum value, where the equality comparison is defined as a numerical comparison using the = operator.

If any of the nodes in the node set has a non-numeric value, the math:min function will return NaN. The definition numeric comparisons entails that NaN != NaN. Therefore if any of the nodes in the node set has a non-numeric value, math:lowest will return an empty node set.

Parameters:
nl - The NodeList for the node-set to be evaluated.
Returns:
node-set with nodes containing the minimum value found, an empty node-set if any node cannot be converted to a number.

abs

public static double abs(double num)
The math:abs function returns the absolute value of a number.

Parameters:
num - A number
Returns:
The absolute value of the number

acos

public static double acos(double num)
The math:acos function returns the arccosine value of a number.

Parameters:
num - A number
Returns:
The arccosine value of the number

asin

public static double asin(double num)
The math:asin function returns the arcsine value of a number.

Parameters:
num - A number
Returns:
The arcsine value of the number

atan

public static double atan(double num)
The math:atan function returns the arctangent value of a number.

Parameters:
num - A number
Returns:
The arctangent value of the number

atan2

public static double atan2(double num1,
                           double num2)
The math:atan2 function returns the angle ( in radians ) from the X axis to a point (y,x).

Parameters:
num1 - The X axis value
num2 - The Y axis value
Returns:
The angle (in radians) from the X axis to a point (y,x)

cos

public static double cos(double num)
The math:cos function returns cosine of the passed argument.

Parameters:
num - A number
Returns:
The cosine value of the number

exp

public static double exp(double num)
The math:exp function returns e (the base of natural logarithms) raised to a power.

Parameters:
num - A number
Returns:
The value of e raised to the given power

log

public static double log(double num)
The math:log function returns the natural logarithm of a number.

Parameters:
num - A number
Returns:
The natural logarithm of the number

power

public static double power(double num1,
                           double num2)
The math:power function returns the value of a base expression taken to a specified power.

Parameters:
num1 - The base
num2 - The power
Returns:
The value of the base expression taken to the specified power

random

public static double random()
The math:random function returns a random number from 0 to 1.

Returns:
A random double from 0 to 1

sin

public static double sin(double num)
The math:sin function returns the sine of the number.

Parameters:
num - A number
Returns:
The sine value of the number

sqrt

public static double sqrt(double num)
The math:sqrt function returns the square root of a number.

Parameters:
num - A number
Returns:
The square root of the number

tan

public static double tan(double num)
The math:tan function returns the tangent of the number passed as an argument.

Parameters:
num - A number
Returns:
The tangent value of the number

constant

public static double constant(String name,
                              double precision)
The math:constant function returns the specified constant to a set precision. The possible constants are:
  PI
  E
  SQRRT2
  LN2
  LN10
  LOG2E
  SQRT1_2
 

Parameters:
name - The name of the constant
precision - The precision
Returns:
The value of the specified constant to the given precision