I updated my Mathematica and finally did it with both methods!
regions = {Function [{x, y, z}, 0.55 < (0.3 x + z) && x < 0], Function [{x, y, z}, (0.3 x - z) < -0.55 && x > 0]};
MapThread [ContourPlot3D [(1 - z) ((x - 1)^2 + y^2 - 1/3)*((x + 1)^2 + y^2 -
1/3) + z (x^2 + y^2 - 1/3) == 0, {x, -2, 2}, {y, -2, 2}, {z,
0, 1}, RegionFunction -> #, PlotPoints -> 200] &, {regions}] // Show
trans = ContourPlot3D [(1 - z) ((x - 1)^2 + y^2 - 1/3)*((x + 1)^2 +
y^2 - 1/3) + z (x^2 + y^2 - 1/3) == 0, {x, -2, 2}, {y, -2, 2}, {z, 0, 1}, PlotPoints -> 200];
Graphics3D [First[trans], ClipPlanes -> {InfinitePlane[{{0, 0, 0.55}, {-2, 2, 1.5}, {-2, -2,
1.5}}], InfinitePlane[{{0, 0, 0.55}, {-2,
2, -0.5}, {-2, -2, -0.5}}]}]
Thank you for hints!
And several more, sorry I can't resist:
Striped with MeshFunctions
regions = {Function[{x, y, z}, 0.55 < (0.475 x + z) && x < 0],
Function[{x, y, z}, (0.475 x - z) < -0.55 && x > 0]};
MapThread[
ContourPlot3D[(1 - z) ((x - 1)^2 + y^2 - 1/3)*((x + 1)^2 + y^2 -
1/3) + z (x^2 + y^2 - 1/3) == 0, {x, -2, 2}, {y, -2, 2}, {z,
0.5, 1}, RegionFunction -> #, PlotPoints -> 200,
BoxRatios -> {1, 1, 1/8}, ViewPoint -> {Front}, Mesh -> 5,
MeshShading -> {Pink, White}, MeshFunctions -> {#1 &},
ImageSize -> Large,
Lighting -> {{"Directional", White, {0, -2, 0}}}] &, {regions}
] // Show
Sine sections
regions = {Function[{x, y, z},
0.55 < (0.3*x + z + 0.04*Sin[1.7*x - 17*z]) && x < 0],
Function[{x, y, z}, (0.3 *x - z + 0.04*Sin[1.7*x + 17*z]) < -0.55 &&
x > 0]};
gobj = MapThread[
ContourPlot3D[(1 - z) ((x - 1)^2 + y^2 - 1/3)*((x + 1)^2 + y^2 -
1/3) + z (x^2 + y^2 - 1/3) == 0, {x, -2, 2}, {y, -2, 2}, {z,
0.5, 1}, RegionFunction -> #, PlotPoints -> 200,
BoxRatios -> {1, 1, 1/8}, ViewPoint -> {0.3, -2, -1},
Mesh -> None, ContourStyle -> Red] &, {regions}];
Show[gobj, ImageSize -> Large, Boxed -> False]
Sorry. It was big fun.
RegionFunction
. $\endgroup$