Effacer les filtres
Effacer les filtres

作った3次元プロット​をMatlab上と同​じようにそのままGU​I上で操作できるよう​に保存するにはどうす​れば良いですか?

17 vues (au cours des 30 derniers jours)
KO
KO le 31 Jan 2024
作った3次元プロットをMatlab上と同じようにそのままGUI上で操作できるように保存するにはどうすれば良いですか?
そのために必要なソフトを追加でインストールする必要はありますか?
拡張子はどうすれば良いでしょうか。
おすすめがあれば教えていただきたいです。

Réponse acceptée

Tak
Tak le 31 Jan 2024
Modifié(e) : Tak le 31 Jan 2024
以下の3つの方法を提示してみます。
1.App Designer によるアプリ化
ひとつの方法は MATLAB App Designer の機能でアプリ化してしまうことです。作成したアプリでは MATLABの figure ウィンドウと同じ操作が可能になります。
非MATLAB環境でも動作するアプリを作成するには MATLAB Compiler が必要です。
また、非MATLAB環境の端末には Runtime をインストールする必要があります。
現状の解析結果をエクスポートするという使い方には不向きですが、解析から3次元のデータビュアーまで…と一通りの機能を持たせるのであればこちらがおすすめです。
クラス(オブジェクト指向)としてコードを書く必要があるため、コーディングの難易度はやや高くなりますが、ご質問の内容に近い例題も豊富にあります。
2.テーブルデータとしてエクスポート
MATLABから直接 3次元オブジェクトの形式 としてエクスポートする機能はありませんが、3次元の点群情報を CSVやスプレッドシート形式のテーブルデータ としてなら保存することが可能です。
これらの形式であればCADソフトやデータビュアーなど、様々な環境でインポートが可能な場合があります。
CSV形式としてエクスポートする例
% 3次元プロットの乱数データを生成
x = rand(15,1);
y = rand(15,1);
z = rand(15,1);
% CSV形式としてエクスポート
writetable(table(x,y,z), 'csvfile.csv')
3.STL形式としてエクスポート
テーブルデータの他としては STLデータ としてなら保存することが可能です。
CADソフトなどでインポートが可能な場合が多いですが、あくまで3次元形状データですので、点群として描画可能か、MATLABのようにグラフ軸なども描画できるかは、お使いになられるソフトの機能に依存します。
STL形式としてエクスポートする例
% 3次元プロットの乱数データを生成
x = rand(15,1);
y = rand(15,1);
z = rand(15,1);
% 点群データから四面体(tetra)を生成
DT = delaunayTriangulation(x,y,z)
% 四面体(tetra)から三角形(tria)へ変換
p = DT.Points;
t = [DT.ConnectivityList(:,[1 2 3]);
DT.ConnectivityList(:,[1 2 4]);
DT.ConnectivityList(:,[1 3 4]);
DT.ConnectivityList(:,[2 3 4])];
TR = triangulation(t,p);
% STLファイルとしてエクスポート
stlwrite(TR, 'stlfile.stl')
  1 commentaire
KO
KO le 5 Mar 2024
Déplacé(e) : Atsushi Ueno le 5 Mar 2024
ご丁寧にありがとうございました。
1,2の方法からまず試してみたいと思います。

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur モデルのインポート dans Help Center et File Exchange

Produits


Version

R2022a

Community Treasure Hunt

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

Start Hunting!