Update: Using a combination of MeshFunctions, ViewPoint and PlotStyle:
ParametricPlot3D[{{4 + (3 + Cos[v]) Sin[u], 4 + (3 + Cos[v]) Cos[u], 4 + Sin[v]},
{8 + (3 + Cos[v]) Cos[u], 3 + Sin[v], 4 + (3 + Cos[v]) Sin[u]}}, {u, 0, 2 Pi}, {v, 0, 2 Pi},
ViewPoint -> {0, 0, Infinity}, MeshFunctions -> {Function[{x, y, z, u, v}, z]},
Mesh -> {{{3.5, Directive[Thick, Red]}}}, Boxed -> False, Axes -> False, PlotStyle -> None]

Animate[ParametricPlot3D[{{4 + (3 + Cos[v]) Sin[u], 4 + (3 + Cos[v]) Cos[u], 4 + Sin[v]},
{8 + (3 + Cos[v]) Cos[u], 3 + Sin[v], 4 + (3 + Cos[v]) Sin[u]}}, {u, 0, 2 Pi}, {v, 0, 2 Pi},
ViewPoint -> {0, 0, Infinity}, MeshFunctions -> {Function[{x, y, z, u, v}, z]},
Mesh -> {{{t, Directive[Thick, Red]}}}, Boxed -> False,
Axes -> False, PlotStyle -> None, PerformanceGoal -> "Quality"],
{t, 0., 8., .005},
AnimationRate -> 2, AnimationRunning -> False, AnimationDirection -> ForwardBackward]

Original post:
Also using Zviovich's example:
ParametricPlot3D[{ConditionalExpression[{4 + (3 + Cos[v]) Sin[u],
4 + (3 + Cos[v]) Cos[u], 4 + Sin[v]}, Sin[v] < 0],
ConditionalExpression[{8 + (3 + Cos[v]) Cos[u], 3 + Sin[v],
4 + (3 + Cos[v]) Sin[u]}, (3 + Cos[v]) Sin[u] < 0]},
{u, 0, 2 Pi}, {v, 0, 2 Pi}, PlotStyle -> {Red, Green},
PlotRange -> {Automatic, Automatic, {0, 8}}, MaxRecursion -> 6]

ParametricPlotwith fixedzinstead ofParametricPlot3D? If it's a problem of coordinate transformations, it would be good to see an actual example with code you have already tried. – Jens Mar 08 '15 at 03:36