Hello,I do not find any documentation about how to intersect two multipatch in 3D.Here my code to create both multipatch :
// first multipatch
IGeometryCollection multiPatchGeometryCollection = new MultiPatchClass();
IPointCollection triangleFanPointCollection = new TriangleFanClass();
triangleFanPointCollection.AddPoint(GeometryUtilities.ConstructPoint3D(596350, 4115350, 500), ref _missing, ref _missing);
triangleFanPointCollection.AddPoint(GeometryUtilities.ConstructPoint3D(596500, 4115500, 200), ref _missing, ref _missing);
triangleFanPointCollection.AddPoint(GeometryUtilities.ConstructPoint3D(596500, 4115200, 200), ref _missing, ref _missing);
triangleFanPointCollection.AddPoint(GeometryUtilities.ConstructPoint3D(596200, 4115200, 200), ref _missing, ref _missing);
triangleFanPointCollection.AddPoint(GeometryUtilities.ConstructPoint3D(596200, 4115500, 200), ref _missing, ref _missing);
triangleFanPointCollection.AddPoint(GeometryUtilities.ConstructPoint3D(596500, 4115500, 200), ref _missing, ref _missing);
multiPatchGeometryCollection.AddGeometry(triangleFanPointCollection as IGeometry, ref _missing, ref _missing);
// second multipatch
IGeometryCollection multiPatchGeometryCollectionSmall = new MultiPatchClass();
IPointCollection triangleFanPointCollectionSmall = new TriangleFanClass();
triangleFanPointCollectionSmall.AddPoint(GeometryUtilities.ConstructPoint3D(596350, 4115350, 300), ref _missing, ref _missing);
triangleFanPointCollectionSmall.AddPoint(GeometryUtilities.ConstructPoint3D(596500, 4115500, 200), ref _missing, ref _missing);
triangleFanPointCollectionSmall.AddPoint(GeometryUtilities.ConstructPoint3D(596500, 4115200, 200), ref _missing, ref _missing);
triangleFanPointCollectionSmall.AddPoint(GeometryUtilities.ConstructPoint3D(596200, 4115200, 200), ref _missing, ref _missing);
triangleFanPointCollectionSmall.AddPoint(GeometryUtilities.ConstructPoint3D(596200, 4115500, 200), ref _missing, ref _missing);
triangleFanPointCollectionSmall.AddPoint(GeometryUtilities.ConstructPoint3D(596500, 4115500, 200), ref _missing, ref _missing);
multiPatchGeometryCollectionSmall.AddGeometry(triangleFanPointCollectionSmall as IGeometry, ref _missing, ref _missing);
// cast en multipatch
IMultiPatch multipatch = multiPatchGeometryCollection as IMultiPatch;
IMultiPatch multipatchSmall = multiPatchGeometryCollectionSmall as IMultiPatch;
GeometryUtilities.ConstructPoint3D return an IPoint (first and second parameters as X,Y and last parameters as Z)but now how can I intersect those two multipatch by code using arcobject?