Ability to clip a multipatch

2530
9
12-16-2021 08:19 AM
Status: Open
Labels (1)
AnnaPearson
New Contributor II

I originally posted this in the help forum but I'm up to 88 views and no replies, so I think it might just not be possible in the current version of ArcPro. I could very well be wrong about that, so let me know if I'm missing anything.

I have 3D multipatches (representing surfaces) which I would like to clip so that I have a file that only has the parts of that multipatch that overlap a 2D polygon (regardless of the Z-value of the multipatch in that area). 

The closest possibility I've found is the 'Slice Multipatch' tool which I could hypothetically use to slice off the sides of the multipatch to do the equivalent of clipping. However, the tool doesn't line up and slice very precisely, especially as I want to slice in the same spot on a bunch of multipatches. If there was some way to use a polyline or a numerical value as an input for where I want it to slice (instead of clicking manually), that would solve this issue. Alternatively, if a polygon could be used as an input then that would essentially be the same as making a 'clip' function for multipatches.

As it stands, I'm using multipatches as a final product and if I want files for a sub-area of that final product I have to go back to step one and re-do everything. Some sort of clipping process would be very useful!

Let me know if any other info would be helpful.

9 Comments
AnnaPearson

@KoryKramerthat would be perfect except unfortunately I'm using open multipatches rather than closed ones

 

KoryKramer
AnnaPearson

I did try that function just to see and it didn't work, which makes sense because I don't know how it would know a way to create closed multipatches out of stuff like the image below (they represent geologic faults and surfaces):

AnnaPearson_1-1639674650268.png

 

 

RodneyChin

Hey Anna, my name is Rodney and I'm with the 3D Data & Editing team. Unfortunately what you are requesting is not technically possible at this time due to a technical limitation with editing operators that work on one feature at a time. It's not currently possible to do a batch mode with input values and execute for multiple features. We can revisit this again in the future if/when that specific limitation is changed.

MichaelContreras

Hello Anna,

I apologize for the late reply but better late than ever, I notice some discussion of some tunnel functionality of 3d data and the way I understand it, is that the you have 2 multipatches (cube & cylinder) and you would like to clip/slice one with another one with precision? Just to be clear because I believe there was some original confusion to understanding what you were trying to achieve.

First thing is the Slice Multipatch is the right tool that comes to mind to use here but, you probably  also need to turn On the Snapping otherwise the precision placement of the plane will be very hard to do. As a side note they can also use the 3d grid and constraints to place them with even better precision and this will slice the feature or features correctly in its place see below:

MichaelContreras_0-1655943197177.png

Second thing is that you could also use Intersect 3D geoprocessing tool that will technically slice intersected feature with a combination of one simple feature or multiple feature and other options leaving you with a simple portion or portions of the intersected feature. Below is an example of the input feature and output feature when use in a simple configurations but it can be combined:

MichaelContreras_1-1655943197182.jpeg

Rodney is right, there’s no simple way to achieve this straight out of the box but there might be some other ways to achieve the same goal, that is if I understood it correctly.

Thanks, Michael.

AnnaPearson

@MichaelContreras 

Hi Michael,

Funnily enough, I actually wasn't using a cube or a cylinder. I have open multipatches and there's nothing really to 'close' (which is why Intersect 3D doesn't work). Slice Multipatch does work but there's no way to slice in all the same places on 200 multipatches. I'm using mostly-vertical planar features (geologic faults, shown in grey from a bird's eye view) and and mostly-horizontal planar features (surfaces, shown multi-colored looking from a side view where the top of the image is up). I was hoping for the ability to get subsets of that data where I only have the features in a particular area (like within a state or within a specific county/region). Hopefully that explanation makes sense! Regardless, it seems like it just isn't possible based on what Rodney said.

AnnaPearson_0-1656005238761.png

AnnaPearson_1-1656005518993.png

Thanks,

Anna

MichaelContreras

Hi @AnnaPearson , this now makes total sense! so I agree with Rodney this is currently not possible straight of the box. However you might be able to achieved this via SDK and some basic knowledge in programing. Regardless we will work in trying to create either a mode or a new configurations that could meet your needs. To be more clear you want a smart Slice that behaves like a 3D Clip meaning that it will work on multiple sides and functions more like a "cookie cutter" as a batch mode even if the geometry is open, thanks for your feedback. 

cbp-geus

We have the same request. We are trying to create a 3D local scene with the ocean floor and various geological subsurface layers in a hollow 3D cube cross section (see attached image). The idea is that the sides of the 3D cube is sliced into individual vertical sections from each intersection of the surface layers. Each side of the sliced multipatch are then represented with either different colors or textures for each layer section.

We have so far created a multipatch volume from an extrude polygon of the area using the 3D Analyst tool Layer 3D To Feature Class.

For each of our surface layers we have a raster layer, but we don't see a way to split or slice the multipatch this way. We have tried to create a multipatch line representing the raster domain boundary by using the 3D Analyst tool Raster Domain and then converted this to a multipatch (shown with the red line). But how to progress from here is uncertain and we don't see any tools for split or slice a multipatch from a multipatch with this kind of operation. The only tools seems to be Intersect 3D which requires the volumes we don't have or the Slice Multipatch, but this does not allow slice operations using other features nor slicing with curvature.

Perhaps we are missing some options here or are we limited with these?

2023-01-11_11-42-21.png