Extracting 2D plane values from a 3D mesh

조회 수: 3 (최근 30일)
Abhishek Saini
Abhishek Saini 2018년 12월 16일
댓글: Walter Roberson 2018년 12월 18일
I have 3 arrays (x,y,z) of size 243,528,000 each. These array have coordinates in x,y and z respectively. I want to extract the data in the 2D plane (say yz plane values at x = 2) from the 3D mesh. These x,y,and z arrays are used to create 3D mesh. How to perform this.

답변 (1개)

Walter Roberson
Walter Roberson 2018년 12월 17일
If you have vectors of values, then scatteredInterpolant() or griddedInterpolant()
However in your earlier question you were dealing with a regular mesh that for whatever reason had been reshaped into vectors. If that is still the situation then you should rearrange back into a 3D shape instead of working with scattered points.
Is your grid 1825 * 2085 * 64 ?
  댓글 수: 4
Abhishek Saini
Abhishek Saini 2018년 12월 18일
I converted in to a linear vector to use it in another FE software for computaion. I want to create a semi circular notch (as a crack) by deleting elements from the mesh as shown in attached figure. So I was planning to find the plane at a particular position and then use inpolygon to find element number for deletion.Because the crack is of almost zero widht so I am afraid whether I could use the in_polyhedron funcition or not.image.png
Walter Roberson
Walter Roberson 2018년 12월 18일
If the input is the full 243528000 and the grid is regular, then reshape and indexing will be much much faster.
Otherwise, use logical masks comparing to the x y z bounding box of the notch to select a small subset of the points, which you can then compare against the detailed polygon.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Contour Plots에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by