BeginPackage["CSM`ComplexParametricPlot`"]

ComplexParametricPlot::usage =
	"ComplexParametricPlot[z, {t, t0, t1}] plots a complex parametric line.
	ComplexParametricPlot[z, {t, t0, t1}, {r, r0, r1, dr}] plot several lines."

ComplexParametricMap::usage = "ComplexParametricMap[f, z, ranges..] shows
	the image of the parametric lines defined by z and their images
	under f side by side."

Begin["`Private`"]

ComplexParametricPlot[z_, range_List]:=
    ParametricPlot[{Re[z],Im[z]}, range]

ComplexParametricPlot[z_, range_List, table_List]:=
    ParametricPlot[Evaluate[Table[{Re[z],Im[z]}, table]], range]

ComplexParametricMap[f_, z_, ranges__]:=
Module[{pre,post},
    pre  = ComplexParametricPlot[z,    ranges, DisplayFunction->Identity];
    post = ComplexParametricPlot[f[z], ranges, DisplayFunction->Identity];
    Show[ GraphicsArray[{pre,post}], DisplayFunction:>$DisplayFunction ]
]

End[]

EndPackage[]
