NAME

parserParametricPlane.pl - Implements Formulas that represent parametric planes in three-space.

DESCRIPTION

This is a Parser class that implements parametric planes in 3D as a subclass of the Formula class. To use it, load this macro file, and set the context to the ParametricPlane context:

loadMacros("parserParametricPlane.pl");
Context("ParametricPlane");

Use ParametricPlane(point,vector1,vector2) or ParametricPlane(formula) to create a ParametricPlane object. You can pass two optional additional parameters that indicated the variables to use for the parameter for the line (these are s and t by default).

Usage examples:

$P = ParametricPlane(Point(3,-1,2),Vector(1,1,3),Vector(-1,2,0));
$P = ParametricPlane([3,-1,2],[1,1,3],[-1,2,0]);
$P = ParametricPlane("<3+t-s,t+2s-1,2+2t>");

$p = Point(3,-1,2); $v1 = Vector(1,1,3); $v2 = Vector(-1,2,0)
$P = ParametricPlane($p,$v1,$v2);

$s = Formula('s'); $t = Formula('t');
    $p = Point(3,-1,2); $v1 = Vector(1,1,3); $v2 = Vector(-1,2,0);
$P = ParametricPlane($p+$s*$v1+$t*$v2);

Context()->constants->are(a=>1+pi^2); # won't guess this value
$P = ParametricPlane("(a,2a,-1) + t <1,a,a^2> + s <2a,0,1-a>");

Then use

ANS($P->cmp);

to get the answer checker for $P.

$lhs == $rhs

#
#  Two parametric planes are equal if their implicit forms are equal
#