Group Abstract Group Abstract

Message Boards Message Boards

BooleanRegion and RegionDifference unable to accomodate certain 3D regions

Posted 11 years ago
POSTED BY: Bryan Lettner

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)

POSTED BY: Nasser M. Abbasi
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard