INTERFACE SPPolyFunction; (* Polynomial functions on the sphere *) IMPORT Wr, Rd, SPFunction; TYPE LONG = LONGREAL; TYPE T <: PublicT; PublicT = SPFunction.T OBJECT deg: CARDINAL; (* Degree of polynomials *) c0: REF Coeffs; (* Coeffs of homog. polynomial of degree "deg" *) c1: REF Coeffs; (* Coeffs of homog. polynomial of degree "deg-1" *) METHODS write(wr: Wr.T); (* Writes the function to "wr". *) read(rd: Rd.T); (* Reads the function from "rd", in the format created by "write". *) END; TYPE Coeffs = ARRAY OF LONGREAL; (* A variable "c" of type "Coeffs" defines a homogeneous polynomial over "x", "y", and "z" with terms os total degree "d", for some "d" specified independently. The order of the terms is defined in SPHomoLabel.i3. *) END SPPolyFunction.