AB4D Forum

Full Version: ViewCubeCameraController Exception
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I trying to create a scene using VB.NET code (no XAML), when i put a Ab3d.Controls.ViewCubeCameraController in a System.Windows.Controls.Canvas a System.IO.FileNotFoundExeption is thrown with this message "Ab3d.PowerToys.resources is not found".

The exception is also generated using Ab3d.Controls.CameraAxisPanel.

The rest of Ab3d code runs correctly.

Some tips to resolve this problem? Thanks.
I do not know what could cause that error.

I have tried again with using the following VB code and it worked well:
Code:
   Private Sub Window_Loaded(sender As Object, e As RoutedEventArgs)
       Dim camera As New Ab3d.Cameras.TargetPositionCamera
       Dim viewCube As New Ab3d.Controls.ViewCubeCameraController
       viewCube.TargetCamera = camera
       RootGrid.Children.Add(viewCube)
   End Sub

Could you share a small code snipper that could reproduce that error. Also please tell which version of Ab3d.PowerToys do you use - the one from the installer or from NuGet and which version of .Net Framework / .Net Core are you using.
Hi, the version of Ab3d.PowerToys.dll is 9.2.7447.1045 from Installer and used with .NET Framework 4.6.1.

Put here a "small" part of code is a problem, I use a lot of inherited class and wrapped class called by theirself, but, in summary, the implementation of TargetPositionCamera and  ViewCubeCameraController is like your code.

Thank's for your help!
I have send you a simple application in VB.net that uses that version. This application works well for me. Please check it by yourself and check what is the difference with your application. 

You can also check the samples project that come with Ab3d.PowerToys - this project should work well.
Thank you abenedik, I will try it.
Because my Ab3d DLL's are located in an application subfolder, I've resolved the problem as follow

Code:
Private Function OnAppDomainAssemblyResolve(
       ByVal sender As System.Object,
       ByVal args As System.ResolveEventArgs) _
       As System.Reflection.Assembly        
       '
       '
       If args.Name.Contains("Ab3d.PowerToys.resources") Then
           '
           '
           Return System.Reflection.Assembly.LoadFile("..\Ab3d\Ab3d.PowerToys.Input.dll")
           '
           '
       End If            
       '
       '
   End Function

Thank you.
Bye.