RegionUnion works but RegionIntersection does notTesting visibility and projecting in Graphics3DConvexHullMesh sometimes excludes valid points from convex hullTrouble with discrete MeshRegions: Integrating over plane slicesPossible bug in RegionUnion or related functions?How to obtain the cell-adjacency graph of a mesh?BooleanRegion with .stl files does not workToElementMesh ignores Boundaries and MeshRefinemet

Does the Symbiotic Entity damage apply to a creature hit by the secondary damage of Green Flame Blade?

How does the Saturn V Dynamic Test Stand work?

Can I submit a paper under an alias so as to avoid trouble in my country?

Writing/buying Seforim rather than Sefer Torah

Church Booleans

Is there any road between the CA State Route 120 and Sherman Pass Road (Forest Route 22S0) that crosses Yosemite/Serria/Sequoia National Park/Forest?

Interaction between Ethereal Absolution versus Edgar Markov with Captivating Vampire

90s(?) book series about two people transported to a parallel medieval world, she joins city watch, he becomes wizard

What is the evidence on the danger of feeding whole blueberries and grapes to infants and toddlers?

How can I pack my food so it doesn't smell?

Don't teach Dhamma to those who can't appreciate it or aren't interested

What is the latest version of SQL Server native client that is compatible with Sql Server 2008 r2

Does Denmark lose almost $700 million a year "carrying" Greenland?

Why doesn't mathematics collapse down, even though humans quite often make mistakes in their proofs?

Is there such a thing as too inconvenient?

How to dismiss intrusive questions from a colleague with whom I don't work?

Is "stainless" a bulk or a surface property of stainless steel?

Do living authors still get paid royalties for their old work?

Vacuum collapse -- why do strong metals implode but glass doesn't?

Did the twin engined Lazair ultralight have a throttle for each engine?

Is it allowable to use an organization's name to publish a paper in a conference, even after I graduate from it?

Changing a TGV booking

Why didn’t Doctor Strange stay in the original winning timeline?

Have only girls been born for a long time in this village?



RegionUnion works but RegionIntersection does not


Testing visibility and projecting in Graphics3DConvexHullMesh sometimes excludes valid points from convex hullTrouble with discrete MeshRegions: Integrating over plane slicesPossible bug in RegionUnion or related functions?How to obtain the cell-adjacency graph of a mesh?BooleanRegion with .stl files does not workToElementMesh ignores Boundaries and MeshRefinemet






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








2












$begingroup$


I am trying to create an Alberti's window figure as described in this question, in which a (three-dimensional) polyhedron (e.g., dodecahedron) is projected onto a (two-dimensional) plane. I realized that the previous approach and solution of projecting points is not quite what I need. Instead, I'd like to project two-dimensional faces (in this case pentagons). Everything works except the final stage. Here's how I proceed:



1) Here are the vertices of the dodecahedron:



myVertices = N@PolyhedronData["Dodecahedron", "Vertices"];


2) Here are the grouped indices of each pentagon face:



myFaces = PolyhedronData["Dodecahedron", "Faces"];


3) Here are the selected faces that are visible from the center of projection:



mySelectedFaces = myFaces[[#]] & /@ 2, 3, 5, 6, 7;


4) Here is the center of projection:



cop = 10, 0, 0;


5) Here are the three-dimensional cones defined by a pentagon face on the dodecahedron and the center of projection:



myCones = Join[#, cop] & /@ (myVertices[[#]] & /@ mySelectedFaces);


6) Here's the region mesh of just the first such cone:



myConeMesh = ConvexHullMesh[myCones[[1]]]


myConeMesh



7) I'm projecting onto a plane defined by:



poly = Polygon[6, -2, -2, 6, -2, 2, 6, 2, 2, 6, 2, -2];


8) If I create the union of the cone and the projection plane, I get just what I expect:



RegionUnion[myConeMesh, poly]


union of cone and projection plane



9) But of course I want instead the intersection of the cone and the projection plane. That should give me a pentagon floating in the plane of the projection plane. (I could then color it, render it however I wish, and so forth.) However, when I implement what I think should be the obvious function, I do not get the desired intersection:



RegionIntersection[myConeMesh, poly]


failed intersection



I have tried all manner of putting the elements in braces, creating Mesh or ConvexHullMesh, etc., without success. I thought the problem might stem from the embedding dimension, but both component regions are in three dimensions.



How can I compute the pentagon intersection region within the projection plane?










share|improve this question









$endgroup$




















    2












    $begingroup$


    I am trying to create an Alberti's window figure as described in this question, in which a (three-dimensional) polyhedron (e.g., dodecahedron) is projected onto a (two-dimensional) plane. I realized that the previous approach and solution of projecting points is not quite what I need. Instead, I'd like to project two-dimensional faces (in this case pentagons). Everything works except the final stage. Here's how I proceed:



    1) Here are the vertices of the dodecahedron:



    myVertices = N@PolyhedronData["Dodecahedron", "Vertices"];


    2) Here are the grouped indices of each pentagon face:



    myFaces = PolyhedronData["Dodecahedron", "Faces"];


    3) Here are the selected faces that are visible from the center of projection:



    mySelectedFaces = myFaces[[#]] & /@ 2, 3, 5, 6, 7;


    4) Here is the center of projection:



    cop = 10, 0, 0;


    5) Here are the three-dimensional cones defined by a pentagon face on the dodecahedron and the center of projection:



    myCones = Join[#, cop] & /@ (myVertices[[#]] & /@ mySelectedFaces);


    6) Here's the region mesh of just the first such cone:



    myConeMesh = ConvexHullMesh[myCones[[1]]]


    myConeMesh



    7) I'm projecting onto a plane defined by:



    poly = Polygon[6, -2, -2, 6, -2, 2, 6, 2, 2, 6, 2, -2];


    8) If I create the union of the cone and the projection plane, I get just what I expect:



    RegionUnion[myConeMesh, poly]


    union of cone and projection plane



    9) But of course I want instead the intersection of the cone and the projection plane. That should give me a pentagon floating in the plane of the projection plane. (I could then color it, render it however I wish, and so forth.) However, when I implement what I think should be the obvious function, I do not get the desired intersection:



    RegionIntersection[myConeMesh, poly]


    failed intersection



    I have tried all manner of putting the elements in braces, creating Mesh or ConvexHullMesh, etc., without success. I thought the problem might stem from the embedding dimension, but both component regions are in three dimensions.



    How can I compute the pentagon intersection region within the projection plane?










    share|improve this question









    $endgroup$
















      2












      2








      2





      $begingroup$


      I am trying to create an Alberti's window figure as described in this question, in which a (three-dimensional) polyhedron (e.g., dodecahedron) is projected onto a (two-dimensional) plane. I realized that the previous approach and solution of projecting points is not quite what I need. Instead, I'd like to project two-dimensional faces (in this case pentagons). Everything works except the final stage. Here's how I proceed:



      1) Here are the vertices of the dodecahedron:



      myVertices = N@PolyhedronData["Dodecahedron", "Vertices"];


      2) Here are the grouped indices of each pentagon face:



      myFaces = PolyhedronData["Dodecahedron", "Faces"];


      3) Here are the selected faces that are visible from the center of projection:



      mySelectedFaces = myFaces[[#]] & /@ 2, 3, 5, 6, 7;


      4) Here is the center of projection:



      cop = 10, 0, 0;


      5) Here are the three-dimensional cones defined by a pentagon face on the dodecahedron and the center of projection:



      myCones = Join[#, cop] & /@ (myVertices[[#]] & /@ mySelectedFaces);


      6) Here's the region mesh of just the first such cone:



      myConeMesh = ConvexHullMesh[myCones[[1]]]


      myConeMesh



      7) I'm projecting onto a plane defined by:



      poly = Polygon[6, -2, -2, 6, -2, 2, 6, 2, 2, 6, 2, -2];


      8) If I create the union of the cone and the projection plane, I get just what I expect:



      RegionUnion[myConeMesh, poly]


      union of cone and projection plane



      9) But of course I want instead the intersection of the cone and the projection plane. That should give me a pentagon floating in the plane of the projection plane. (I could then color it, render it however I wish, and so forth.) However, when I implement what I think should be the obvious function, I do not get the desired intersection:



      RegionIntersection[myConeMesh, poly]


      failed intersection



      I have tried all manner of putting the elements in braces, creating Mesh or ConvexHullMesh, etc., without success. I thought the problem might stem from the embedding dimension, but both component regions are in three dimensions.



      How can I compute the pentagon intersection region within the projection plane?










      share|improve this question









      $endgroup$




      I am trying to create an Alberti's window figure as described in this question, in which a (three-dimensional) polyhedron (e.g., dodecahedron) is projected onto a (two-dimensional) plane. I realized that the previous approach and solution of projecting points is not quite what I need. Instead, I'd like to project two-dimensional faces (in this case pentagons). Everything works except the final stage. Here's how I proceed:



      1) Here are the vertices of the dodecahedron:



      myVertices = N@PolyhedronData["Dodecahedron", "Vertices"];


      2) Here are the grouped indices of each pentagon face:



      myFaces = PolyhedronData["Dodecahedron", "Faces"];


      3) Here are the selected faces that are visible from the center of projection:



      mySelectedFaces = myFaces[[#]] & /@ 2, 3, 5, 6, 7;


      4) Here is the center of projection:



      cop = 10, 0, 0;


      5) Here are the three-dimensional cones defined by a pentagon face on the dodecahedron and the center of projection:



      myCones = Join[#, cop] & /@ (myVertices[[#]] & /@ mySelectedFaces);


      6) Here's the region mesh of just the first such cone:



      myConeMesh = ConvexHullMesh[myCones[[1]]]


      myConeMesh



      7) I'm projecting onto a plane defined by:



      poly = Polygon[6, -2, -2, 6, -2, 2, 6, 2, 2, 6, 2, -2];


      8) If I create the union of the cone and the projection plane, I get just what I expect:



      RegionUnion[myConeMesh, poly]


      union of cone and projection plane



      9) But of course I want instead the intersection of the cone and the projection plane. That should give me a pentagon floating in the plane of the projection plane. (I could then color it, render it however I wish, and so forth.) However, when I implement what I think should be the obvious function, I do not get the desired intersection:



      RegionIntersection[myConeMesh, poly]


      failed intersection



      I have tried all manner of putting the elements in braces, creating Mesh or ConvexHullMesh, etc., without success. I thought the problem might stem from the embedding dimension, but both component regions are in three dimensions.



      How can I compute the pentagon intersection region within the projection plane?







      mesh regionintersection convexhullmesh






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 8 hours ago









      David G. StorkDavid G. Stork

      26k2 gold badges23 silver badges58 bronze badges




      26k2 gold badges23 silver badges58 bronze badges























          1 Answer
          1






          active

          oldest

          votes


















          4












          $begingroup$

          Here's one workaround.



          Since your clip-plane is axes aligned, we can use the 2 argument form of DiscretizeRegion to clip the solid in one direction, then manually pick the faces on the plane.



          (If your clip-plane is not axes aligned, you could rotate your whole scene, clip, then rotate back.)



          x = 6.;
          clip = BoundaryDiscretizeRegion[myConeMesh, -1, x, -1, 1, -1, 2];

          int = MeshRegion[
          MeshCoordinates[clip],
          Pick[MeshCells[clip, 2], PropertyValue[clip, 2, MeshCellCentroid][[All, 1]], x]
          ];

          Show[
          MeshRegion[int, BaseStyle -> ColorData[112, 1], PlotTheme -> "Minimal"],
          BoundaryMeshRegion[myConeMesh, BaseStyle -> Opacity[.3], PlotTheme -> "Minimal"]
          ]


          enter image description here






          share|improve this answer









          $endgroup$










          • 1




            $begingroup$
            Indeed, your result gives the floating pentagon, as needed (thanks), but this is such a kludgy workaround. I will be performing lots of these kinds of projections—onto planes of arbitrary orientation—that rotating, clipping, and so forth is simply unwieldy. Do you have any insight as to why the straightforward RegionIntersection doesn't work?
            $endgroup$
            – David G. Stork
            7 hours ago











          • $begingroup$
            Indeed a messy workaround. I don't really know why RegionIntersection doesn't work, but note that RegionUnion simply places both region into the same scene and doesn't resolve their intersections. You can see this with RegionUnion[myConeMesh, poly] // ConnectedMeshComponents. RegionIntersection on the other hand must find the intersections.
            $endgroup$
            – Chip Hurst
            7 hours ago










          • $begingroup$
            I figured out a better workaround: Define poly = Cuboid[5.9,-2,-2,6,2,2]. This three-dimensional region then works. The earlier problem must be due to something about intrinsic dimension.
            $endgroup$
            – David G. Stork
            7 hours ago











          • $begingroup$
            Technically that's not a plane, but you could then manually pick out the faces like in my answer. Also BoundaryDiscretizeRegion[myConeMesh, x - .001, x, -1, 1, -1, 2] works like this too.
            $endgroup$
            – Chip Hurst
            7 hours ago










          • $begingroup$
            Anyway.... thanks for your help (+1)... but not a full accept, since I have a sense someone will see through the fundamental problem and come to a true planar solution.
            $endgroup$
            – David G. Stork
            7 hours ago













          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "387"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f203958%2fregionunion-works-but-regionintersection-does-not%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          4












          $begingroup$

          Here's one workaround.



          Since your clip-plane is axes aligned, we can use the 2 argument form of DiscretizeRegion to clip the solid in one direction, then manually pick the faces on the plane.



          (If your clip-plane is not axes aligned, you could rotate your whole scene, clip, then rotate back.)



          x = 6.;
          clip = BoundaryDiscretizeRegion[myConeMesh, -1, x, -1, 1, -1, 2];

          int = MeshRegion[
          MeshCoordinates[clip],
          Pick[MeshCells[clip, 2], PropertyValue[clip, 2, MeshCellCentroid][[All, 1]], x]
          ];

          Show[
          MeshRegion[int, BaseStyle -> ColorData[112, 1], PlotTheme -> "Minimal"],
          BoundaryMeshRegion[myConeMesh, BaseStyle -> Opacity[.3], PlotTheme -> "Minimal"]
          ]


          enter image description here






          share|improve this answer









          $endgroup$










          • 1




            $begingroup$
            Indeed, your result gives the floating pentagon, as needed (thanks), but this is such a kludgy workaround. I will be performing lots of these kinds of projections—onto planes of arbitrary orientation—that rotating, clipping, and so forth is simply unwieldy. Do you have any insight as to why the straightforward RegionIntersection doesn't work?
            $endgroup$
            – David G. Stork
            7 hours ago











          • $begingroup$
            Indeed a messy workaround. I don't really know why RegionIntersection doesn't work, but note that RegionUnion simply places both region into the same scene and doesn't resolve their intersections. You can see this with RegionUnion[myConeMesh, poly] // ConnectedMeshComponents. RegionIntersection on the other hand must find the intersections.
            $endgroup$
            – Chip Hurst
            7 hours ago










          • $begingroup$
            I figured out a better workaround: Define poly = Cuboid[5.9,-2,-2,6,2,2]. This three-dimensional region then works. The earlier problem must be due to something about intrinsic dimension.
            $endgroup$
            – David G. Stork
            7 hours ago











          • $begingroup$
            Technically that's not a plane, but you could then manually pick out the faces like in my answer. Also BoundaryDiscretizeRegion[myConeMesh, x - .001, x, -1, 1, -1, 2] works like this too.
            $endgroup$
            – Chip Hurst
            7 hours ago










          • $begingroup$
            Anyway.... thanks for your help (+1)... but not a full accept, since I have a sense someone will see through the fundamental problem and come to a true planar solution.
            $endgroup$
            – David G. Stork
            7 hours ago















          4












          $begingroup$

          Here's one workaround.



          Since your clip-plane is axes aligned, we can use the 2 argument form of DiscretizeRegion to clip the solid in one direction, then manually pick the faces on the plane.



          (If your clip-plane is not axes aligned, you could rotate your whole scene, clip, then rotate back.)



          x = 6.;
          clip = BoundaryDiscretizeRegion[myConeMesh, -1, x, -1, 1, -1, 2];

          int = MeshRegion[
          MeshCoordinates[clip],
          Pick[MeshCells[clip, 2], PropertyValue[clip, 2, MeshCellCentroid][[All, 1]], x]
          ];

          Show[
          MeshRegion[int, BaseStyle -> ColorData[112, 1], PlotTheme -> "Minimal"],
          BoundaryMeshRegion[myConeMesh, BaseStyle -> Opacity[.3], PlotTheme -> "Minimal"]
          ]


          enter image description here






          share|improve this answer









          $endgroup$










          • 1




            $begingroup$
            Indeed, your result gives the floating pentagon, as needed (thanks), but this is such a kludgy workaround. I will be performing lots of these kinds of projections—onto planes of arbitrary orientation—that rotating, clipping, and so forth is simply unwieldy. Do you have any insight as to why the straightforward RegionIntersection doesn't work?
            $endgroup$
            – David G. Stork
            7 hours ago











          • $begingroup$
            Indeed a messy workaround. I don't really know why RegionIntersection doesn't work, but note that RegionUnion simply places both region into the same scene and doesn't resolve their intersections. You can see this with RegionUnion[myConeMesh, poly] // ConnectedMeshComponents. RegionIntersection on the other hand must find the intersections.
            $endgroup$
            – Chip Hurst
            7 hours ago










          • $begingroup$
            I figured out a better workaround: Define poly = Cuboid[5.9,-2,-2,6,2,2]. This three-dimensional region then works. The earlier problem must be due to something about intrinsic dimension.
            $endgroup$
            – David G. Stork
            7 hours ago











          • $begingroup$
            Technically that's not a plane, but you could then manually pick out the faces like in my answer. Also BoundaryDiscretizeRegion[myConeMesh, x - .001, x, -1, 1, -1, 2] works like this too.
            $endgroup$
            – Chip Hurst
            7 hours ago










          • $begingroup$
            Anyway.... thanks for your help (+1)... but not a full accept, since I have a sense someone will see through the fundamental problem and come to a true planar solution.
            $endgroup$
            – David G. Stork
            7 hours ago













          4












          4








          4





          $begingroup$

          Here's one workaround.



          Since your clip-plane is axes aligned, we can use the 2 argument form of DiscretizeRegion to clip the solid in one direction, then manually pick the faces on the plane.



          (If your clip-plane is not axes aligned, you could rotate your whole scene, clip, then rotate back.)



          x = 6.;
          clip = BoundaryDiscretizeRegion[myConeMesh, -1, x, -1, 1, -1, 2];

          int = MeshRegion[
          MeshCoordinates[clip],
          Pick[MeshCells[clip, 2], PropertyValue[clip, 2, MeshCellCentroid][[All, 1]], x]
          ];

          Show[
          MeshRegion[int, BaseStyle -> ColorData[112, 1], PlotTheme -> "Minimal"],
          BoundaryMeshRegion[myConeMesh, BaseStyle -> Opacity[.3], PlotTheme -> "Minimal"]
          ]


          enter image description here






          share|improve this answer









          $endgroup$



          Here's one workaround.



          Since your clip-plane is axes aligned, we can use the 2 argument form of DiscretizeRegion to clip the solid in one direction, then manually pick the faces on the plane.



          (If your clip-plane is not axes aligned, you could rotate your whole scene, clip, then rotate back.)



          x = 6.;
          clip = BoundaryDiscretizeRegion[myConeMesh, -1, x, -1, 1, -1, 2];

          int = MeshRegion[
          MeshCoordinates[clip],
          Pick[MeshCells[clip, 2], PropertyValue[clip, 2, MeshCellCentroid][[All, 1]], x]
          ];

          Show[
          MeshRegion[int, BaseStyle -> ColorData[112, 1], PlotTheme -> "Minimal"],
          BoundaryMeshRegion[myConeMesh, BaseStyle -> Opacity[.3], PlotTheme -> "Minimal"]
          ]


          enter image description here







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered 7 hours ago









          Chip HurstChip Hurst

          25.3k1 gold badge61 silver badges100 bronze badges




          25.3k1 gold badge61 silver badges100 bronze badges










          • 1




            $begingroup$
            Indeed, your result gives the floating pentagon, as needed (thanks), but this is such a kludgy workaround. I will be performing lots of these kinds of projections—onto planes of arbitrary orientation—that rotating, clipping, and so forth is simply unwieldy. Do you have any insight as to why the straightforward RegionIntersection doesn't work?
            $endgroup$
            – David G. Stork
            7 hours ago











          • $begingroup$
            Indeed a messy workaround. I don't really know why RegionIntersection doesn't work, but note that RegionUnion simply places both region into the same scene and doesn't resolve their intersections. You can see this with RegionUnion[myConeMesh, poly] // ConnectedMeshComponents. RegionIntersection on the other hand must find the intersections.
            $endgroup$
            – Chip Hurst
            7 hours ago










          • $begingroup$
            I figured out a better workaround: Define poly = Cuboid[5.9,-2,-2,6,2,2]. This three-dimensional region then works. The earlier problem must be due to something about intrinsic dimension.
            $endgroup$
            – David G. Stork
            7 hours ago











          • $begingroup$
            Technically that's not a plane, but you could then manually pick out the faces like in my answer. Also BoundaryDiscretizeRegion[myConeMesh, x - .001, x, -1, 1, -1, 2] works like this too.
            $endgroup$
            – Chip Hurst
            7 hours ago










          • $begingroup$
            Anyway.... thanks for your help (+1)... but not a full accept, since I have a sense someone will see through the fundamental problem and come to a true planar solution.
            $endgroup$
            – David G. Stork
            7 hours ago












          • 1




            $begingroup$
            Indeed, your result gives the floating pentagon, as needed (thanks), but this is such a kludgy workaround. I will be performing lots of these kinds of projections—onto planes of arbitrary orientation—that rotating, clipping, and so forth is simply unwieldy. Do you have any insight as to why the straightforward RegionIntersection doesn't work?
            $endgroup$
            – David G. Stork
            7 hours ago











          • $begingroup$
            Indeed a messy workaround. I don't really know why RegionIntersection doesn't work, but note that RegionUnion simply places both region into the same scene and doesn't resolve their intersections. You can see this with RegionUnion[myConeMesh, poly] // ConnectedMeshComponents. RegionIntersection on the other hand must find the intersections.
            $endgroup$
            – Chip Hurst
            7 hours ago










          • $begingroup$
            I figured out a better workaround: Define poly = Cuboid[5.9,-2,-2,6,2,2]. This three-dimensional region then works. The earlier problem must be due to something about intrinsic dimension.
            $endgroup$
            – David G. Stork
            7 hours ago











          • $begingroup$
            Technically that's not a plane, but you could then manually pick out the faces like in my answer. Also BoundaryDiscretizeRegion[myConeMesh, x - .001, x, -1, 1, -1, 2] works like this too.
            $endgroup$
            – Chip Hurst
            7 hours ago










          • $begingroup$
            Anyway.... thanks for your help (+1)... but not a full accept, since I have a sense someone will see through the fundamental problem and come to a true planar solution.
            $endgroup$
            – David G. Stork
            7 hours ago







          1




          1




          $begingroup$
          Indeed, your result gives the floating pentagon, as needed (thanks), but this is such a kludgy workaround. I will be performing lots of these kinds of projections—onto planes of arbitrary orientation—that rotating, clipping, and so forth is simply unwieldy. Do you have any insight as to why the straightforward RegionIntersection doesn't work?
          $endgroup$
          – David G. Stork
          7 hours ago





          $begingroup$
          Indeed, your result gives the floating pentagon, as needed (thanks), but this is such a kludgy workaround. I will be performing lots of these kinds of projections—onto planes of arbitrary orientation—that rotating, clipping, and so forth is simply unwieldy. Do you have any insight as to why the straightforward RegionIntersection doesn't work?
          $endgroup$
          – David G. Stork
          7 hours ago













          $begingroup$
          Indeed a messy workaround. I don't really know why RegionIntersection doesn't work, but note that RegionUnion simply places both region into the same scene and doesn't resolve their intersections. You can see this with RegionUnion[myConeMesh, poly] // ConnectedMeshComponents. RegionIntersection on the other hand must find the intersections.
          $endgroup$
          – Chip Hurst
          7 hours ago




          $begingroup$
          Indeed a messy workaround. I don't really know why RegionIntersection doesn't work, but note that RegionUnion simply places both region into the same scene and doesn't resolve their intersections. You can see this with RegionUnion[myConeMesh, poly] // ConnectedMeshComponents. RegionIntersection on the other hand must find the intersections.
          $endgroup$
          – Chip Hurst
          7 hours ago












          $begingroup$
          I figured out a better workaround: Define poly = Cuboid[5.9,-2,-2,6,2,2]. This three-dimensional region then works. The earlier problem must be due to something about intrinsic dimension.
          $endgroup$
          – David G. Stork
          7 hours ago





          $begingroup$
          I figured out a better workaround: Define poly = Cuboid[5.9,-2,-2,6,2,2]. This three-dimensional region then works. The earlier problem must be due to something about intrinsic dimension.
          $endgroup$
          – David G. Stork
          7 hours ago













          $begingroup$
          Technically that's not a plane, but you could then manually pick out the faces like in my answer. Also BoundaryDiscretizeRegion[myConeMesh, x - .001, x, -1, 1, -1, 2] works like this too.
          $endgroup$
          – Chip Hurst
          7 hours ago




          $begingroup$
          Technically that's not a plane, but you could then manually pick out the faces like in my answer. Also BoundaryDiscretizeRegion[myConeMesh, x - .001, x, -1, 1, -1, 2] works like this too.
          $endgroup$
          – Chip Hurst
          7 hours ago












          $begingroup$
          Anyway.... thanks for your help (+1)... but not a full accept, since I have a sense someone will see through the fundamental problem and come to a true planar solution.
          $endgroup$
          – David G. Stork
          7 hours ago




          $begingroup$
          Anyway.... thanks for your help (+1)... but not a full accept, since I have a sense someone will see through the fundamental problem and come to a true planar solution.
          $endgroup$
          – David G. Stork
          7 hours ago

















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Mathematica Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          Use MathJax to format equations. MathJax reference.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f203958%2fregionunion-works-but-regionintersection-does-not%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Canceling a color specificationRandomly assigning color to Graphics3D objects?Default color for Filling in Mathematica 9Coloring specific elements of sets with a prime modified order in an array plotHow to pick a color differing significantly from the colors already in a given color list?Detection of the text colorColor numbers based on their valueCan color schemes for use with ColorData include opacity specification?My dynamic color schemes

          Invision Community Contents History See also References External links Navigation menuProprietaryinvisioncommunity.comIPS Community ForumsIPS Community Forumsthis blog entry"License Changes, IP.Board 3.4, and the Future""Interview -- Matt Mecham of Ibforums""CEO Invision Power Board, Matt Mecham Is a Liar, Thief!"IPB License Explanation 1.3, 1.3.1, 2.0, and 2.1ArchivedSecurity Fixes, Updates And Enhancements For IPB 1.3.1Archived"New Demo Accounts - Invision Power Services"the original"New Default Skin"the original"Invision Power Board 3.0.0 and Applications Released"the original"Archived copy"the original"Perpetual licenses being done away with""Release Notes - Invision Power Services""Introducing: IPS Community Suite 4!"Invision Community Release Notes

          199年 目錄 大件事 到箇年出世嗰人 到箇年死嗰人 節慶、風俗習慣 導覽選單