Appearance
CAD IMPORT PRO
チェクリスト
=確認してほしい拡張子=
■高
- [x] Support for STEP 3D file format (. Stp,. Step)
- [x] Support for STL 3D file format (.stl)
■中
- [x] Support for SolidWorks 3D file format (. sldprt,.sldasm)
- [x] Support for Solid Edge 3D file format (. par,.psm,.asm,.sldasm)
- [x] Support for IGES 3D file format (. Igs,. Iges)
■低
- [ ] ▲Support for Catia V4 3D file format (. model,. dlv,.dlv3,.exp,.session)
- [x] Support for Catia V5 3D file format (. CATPart,. CATProduct)
- [ ] ▲Support for Catia V6/3DEXPERIENCE 3D file format (. 3dxml)
- [x] Support for PARASOLID 3D file format (. x_t,.x_b,.xmt_txt,.xmt_bin)
- [x] Support for ProE/Creo Parametric 3D file format (. par,.xpr,.asm,.xas)
- [x] Support for Inventor 3D file format (. ipt,.iam)
- [x] Support for Rhino 3D file format (.3dm)
■ダメなこと確認済(一応見てもらっても大丈夫です)
- [x] Support for DWG/DXF 3D file format (. dwg,.dxf)
プロジェクトとしてのエラーが358件出ているが一度試してみる。
対応〇
- STL 3D file format (.stl)
- STEP 3D file format (. Stp,. Step)
- SolidWorks 3D file format (. sldprt,.sldasm)
- Solid Edge 3D file format (. par,.psm,.asm,.sldasm)
- IGES 3D file format (. Igs,. Iges)
- Inventor 3D file format (. ipt,.iam)
- PARASOLID 3D file format (. x_t,.x_b,.xmt_txt,.xmt_bin)
- DXF 3D file format (.dxf)
非対応
- DWG3D file format (. dwg)
- Catia V5 3D file format (. CATPart,. CATProduct)
- Rhino 3D file format (.3dm)
モデルについて
ランタイムロードの調査を行っている最中にデモモデルを発見しました。
CADImportProフォルダではなくStreamingAssetsフォルダ内にあります。

STEP:

STL:

SolidWorks :

Solid Edge:

IGES:

Catia V4:
Catia V5:

エラーが出た。時間があったらエラー内容の確認をおこなう
Catia V6/3DEXPERIENCE:

厳しそう。
PARASOLID :

ProE/Creo Parametric:

Inventor:
IONIZER_HOLDER_BRACKET.1_3.0003.ipt

Rhino :

DXF:

DWG:

エラーが出た。
一番わかりやすい一覧表
https://jp.misumi-ec.com/guide/faq/48.html

ダウンロードサイト
CAD・図面・取扱説明書|株式会社オンダ製作所|配管資材の総合メーカー
Free CAD Designs, Files & 3D Models | The GrabCAD Community Library
RuntimeImportについて
csharp
using CADProImporter;
using UnityEngine;
namespace CADProImporter.Example
{
public class SimpleRuningImport_01 : MonoBehaviour
{
void Start()
{
string stpPath = Application.streamingAssetsPath + "/CADModels/SolidWorks/GearReducer.SLDASM";
GameObject root = CADImporterPro.ImportPro(stpPath, 10, (gameObject, val) =>
{
gameObject.transform.localScale = Vector3.one * 100;
Bounds bounds = gameObject.CalculateBounds();
FreeCamera.Instance.SetTargetLookAt(bounds.center);
});
}
}
}Demoシーンのスクリプトより、ファイルの用意とファイルパスの取得さえできればランタイムロードの実装ができそうです。
ランタイムロードをするといっても、アプリ内のファイルに自身でデータを入れてから。。。になりそう。ファイルパスをどのように取得するかはまた問題になりそう。
SFB
Releases · gkngkc/UnityStandaloneFileBrowser
を用いてファイル選択を直接できるように。
今回はpを押したらファイルが開くようにしています。 (CADImportProにキーボードaを使用する機能があるため)
スクリプト
csharp
using CADProImporter;
using UnityEngine;
using System.IO;
using SFB; // StandaloneFileBrowserの名前空間
namespace CADProImporter.Example
{
public class demo : MonoBehaviour
{
void Update()
{
// キー「P」が押されたとき
if (Input.GetKeyDown(KeyCode.P))
{
// StandaloneFileBrowserでファイル選択ダイアログを表示(全てのファイルを対象)
string[] paths = StandaloneFileBrowser.OpenFilePanel("CADファイルを選択", "", "", false);
if (paths.Length > 0 && !string.IsNullOrEmpty(paths[0]))
{
string selectedPath = paths[0];
// StreamingAssets/Loadフォルダのパスを取得し、存在しなければ作成
string loadFolder = Path.Combine(Application.streamingAssetsPath, "Load");
if (!Directory.Exists(loadFolder))
{
Directory.CreateDirectory(loadFolder);
}
// 選択されたファイル名を取得し、Loadフォルダ内にコピー
string fileName = Path.GetFileName(selectedPath);
string destPath = Path.Combine(loadFolder, fileName);
File.Copy(selectedPath, destPath, true);
// コピーしたファイルのパスをログに出力
Debug.Log("インポート対象のファイルパス: " + destPath);
// コピーしたファイルのパスを用いてデータをインポート&表示
GameObject root = CADImporterPro.ImportPro(destPath, 10, (gameObject, val) =>
{
// 例外情報がある場合はログ出力して処理中断
if (val != null)
{
Debug.LogError("CADインポート中にエラーが発生: " + val.SourceException);
return;
}
// gameObjectがnullの場合もログ出力して処理中断
if (gameObject == null)
{
Debug.LogError("インポートされたGameObjectがnullです。");
return;
}
// 正常にインポートできた場合の処理
gameObject.transform.localScale = Vector3.one * 100;
Bounds bounds = gameObject.CalculateBounds();
if (FreeCamera.Instance != null)
{
FreeCamera.Instance.SetTargetLookAt(bounds.center);
}
else
{
Debug.LogWarning("FreeCamera.Instanceがnullです。");
}
});
}
}
}
}
}


無事読み込めました。
Author: 水上 | Source:
水上\CAD IMPORT PRO 19faba435ee780f99267f616d49d319e.md