One has to be careful to first know that the object can actually be taken as a region. Without having clear idea what makes something a Region
or not, it will be a problem using them.
c = 0.75; r = 89; R = 144; d = 2;
p = ParametricPlot3D[{c (Cos[t] + d) Cos[u], c (Cos[t] + d) Sin[u], c Sin[t]}, {u, 0, 2 Pi}, {t, 0, 2 Pi}, Mesh -> False,
PlotStyle -> Opacity[0.5], MaxRecursion -> 2];
RegionQ[p]
(*False*)
while
p = Ball[{0, 0, 0}, 2];
RegionQ[p]
(*True*)
The problem is that DiscretizeGraphics
does not support ComplexGraphics
also. When I tried this, it failed:
c = 0.75; r = 89; R = 144; d = 2;
p1 = Graphics3D[First@
ParametricPlot3D[{c (Cos[t] + d) Cos[u], c (Cos[t] + d) Sin[u], c Sin[t]}, {u, 0, 2 Pi}, {t, 0, 2 Pi}, Mesh -> False,
PlotStyle -> Opacity[0.5], MaxRecursion -> 2]];
DiscretizeGraphics[p1]
The error is
The function DiscretizeGraphics is not implemented for GraphicsComplex[
Without making your ParametricPlot3D
a Region
, there is no chance of using BooleanRegion[And
on them. So, this is the first problem to solve. Since I do not use these functions (they are new in V10, and just got V10 two days ago, may be someone else would know)