How to convert CAD file to points on 3D grid? [URGENT]

8 ビュー (過去 30 日間)
Jens Sonck
Jens Sonck 2021 年 3 月 21 日
コメント済み: Ali Grysah 2021 年 4 月 2 日
Hi,
For a project I'm working on, I need to calculate the buoyancy force on a boats hull. The buoyancy of a hull is the volume of the part under the fluid surface multiplied by the density of the fluid. I wrote a little script to calculate that volume and center of that volume (from list of coordinates of subvolumes) to have the magnitude of the force and the point of engagement.
The only thing I need to do now is to convert my CAD model into a set of points (subvolumes) with x,y and z coordinates. My Idea was to do this manually but I need about 2000 points. Is there a way to convert my CAD model to a set of point on a fixed 3D grid? Basically like when you want to make someting in minecraft, an array with al the coordinates of where the blocks would be placed.
Afterthought: I basically want to check if a point on my 3d grid (which will define the 'mesh' size) is within the boundaries of the CAD model and then add it to the list of points.
UPDATE:
I got the alphashape thing working but the shape it produces is off. The concave part of my model is skipped (see pictures) I tried playing with the alpha, region and hole parameters and that kinda fixes the front but messes up the back.
Thanks in advance
Jens
  8 件のコメント
Precise Simulation
Precise Simulation 2021 年 3 月 31 日
I think you could import your CAD model into the PDE or FEATool Multiphysics toolboxes, generate a volume mesh, and use the (Delaunay) mesh to check which points are in or outside of the mesh using for example tsearchn "tsearchn(X,TRI,XI) returns the indices t of the triangulation TRI for each point in XI, and NaN for all points outside the convex hull of X".
Ali Grysah
Ali Grysah 2021 年 4 月 2 日
  • hlo can help me i need matlab 2008 ,,,windows7,32bt

サインインしてコメントする。

採用された回答

darova
darova 2021 年 3 月 21 日
Try alphaShape with inShape option
  14 件のコメント
Jens Sonck
Jens Sonck 2021 年 3 月 23 日
@darova I've attached a .zip with the model and the lines that give me the error, hope this clears things up.
Jens Sonck
Jens Sonck 2021 年 3 月 24 日
@darova I've got it working but the shape is off. I've updated the original question with pictures.

サインインしてコメントする。

その他の回答 (1 件)

darova
darova 2021 年 3 月 24 日
What about this? You can find volume under each triangle using this formula
  5 件のコメント
darova
darova 2021 年 3 月 25 日
Maybe you don't such precise mesh. alphaShape has function volume for calculation volume
Jens Sonck
Jens Sonck 2021 年 3 月 25 日
My algorithm takes 73ms to calculate 77k points so that's adequate for the simulation. I'm now having trouble in simscape with the dynamics.

サインインしてコメントする。

カテゴリ

Help Center および File Exchange2-D and 3-D Plots についてさらに検索

製品


リリース

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by