Skip to content

Commit 0ea76aa

Browse files
authored
feat: allow importer to load obj,off,ply,stl from application resources (helix-toolkit#2030)
1 parent ab52581 commit 0ea76aa

File tree

11 files changed

+12406
-22
lines changed

11 files changed

+12406
-22
lines changed

.gitignore

+7-1
Original file line numberDiff line numberDiff line change
@@ -204,4 +204,10 @@ FakesAssemblies/
204204
/Source/HelixToolkit.SharpDX.Shared/Shaders/_default.bfx
205205
**/.vs/**
206206
/Source/MigrationBackup/**
207-
**/*.cso
207+
**/*.cso
208+
209+
!/Source/Examples/WPF/ExampleBrowser/Resources/simple3dModel.obj
210+
!/Source/Examples/WPF/ExampleBrowser/Resources/simple3dModel.objz
211+
!/Source/Examples/WPF/ExampleBrowser/Resources/simple3dModel.off
212+
!/Source/Examples/WPF/ExampleBrowser/Resources/simple3dModel.ply
213+
!/Source/Examples/WPF/ExampleBrowser/Resources/simple3dModel.stl

Source/Examples/WPF/ExampleBrowser/ExampleBrowser.csproj

+5
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,11 @@
196196
<Compile Include="Workitems\Workitem10046\MainWindow.xaml.cs">
197197
<DependentUpon>MainWindow.xaml</DependentUpon>
198198
</Compile>
199+
<Resource Include="Resources\simple3dModel.objz" />
200+
<Resource Include="Resources\simple3dModel.obj" />
201+
<Resource Include="Resources\simple3dModel.off" />
202+
<Resource Include="Resources\simple3dModel.ply" />
203+
<Resource Include="Resources\simple3dModel.stl" />
199204
<Resource Include="Images\TriangularizationDemo_small.png" />
200205
<Resource Include="Images\MvvmCameraDemo_small.png" />
201206
<Resource Include="Images\MvvmDemo_small.png" />

Source/Examples/WPF/ExampleBrowser/Examples/ModelViewer/MainViewModel.cs

+9-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ namespace ModelViewer
2020
[SuppressMessage("StyleCop.CSharp.DocumentationRules", "SA1600:ElementsMustBeDocumented", Justification = "Reviewed. Suppression is OK here.")]
2121
public class MainViewModel : Observable
2222
{
23-
private const string OpenFileFilter = "3D model files (*.3ds;*.obj;*.lwo;*.stl;*.ply;)|*.3ds;*.obj;*.objz;*.lwo;*.stl;*.ply;";
23+
private const string OpenFileFilter = "3D model files (*.3ds;*.obj;*.off;*.lwo;*.stl;*.ply;)|*.3ds;*.obj;*.objz;*.off;*.lwo;*.stl;*.ply;";
2424

2525
private const string TitleFormatString = "3D model viewer - {0}";
2626

@@ -60,6 +60,14 @@ public MainViewModel(IFileDialogService fds, HelixViewport3D viewport)
6060
{
6161
this.Elements.Add(new VisualViewModel(c));
6262
}
63+
64+
// defaults: just to make sure it works
65+
var modelImporter = new ModelImporter();
66+
//this.CurrentModel = modelImporter.Load("pack://application:,,,/ExampleBrowser;component/Resources/simple3dModel.obj");
67+
//this.CurrentModel = modelImporter.Load("pack://application:,,,/ExampleBrowser;component/Resources/simple3dModel.objz");
68+
//this.CurrentModel = modelImporter.Load("pack://application:,,,/ExampleBrowser;component/Resources/simple3dModel.off");
69+
//this.CurrentModel = modelImporter.Load("pack://application:,,,/ExampleBrowser;component/Resources/simple3dModel.ply");
70+
this.CurrentModel = modelImporter.Load("pack://application:,,,/ExampleBrowser;component/Resources/simple3dModel.stl");
6371
}
6472

6573
public string CurrentModelPath

0 commit comments

Comments
 (0)