Introduction to ActiViz Webinar

Unleash the power of the Visualization Toolkit (VTK) for your 3D content in C#, .Net and Unity Software. ActiViz allows you to easily integrate 3D visualization in your .Net application.

This 30 minutes webinar will focus on presenting the latest ActiViz (9.0) functionalities. ActiViz is the C# wrapper around the Visualization Toolkit (VTK).

On June 23, 9:30 am GMT+2 (Paris time), we will focus on the different use cases for ActiViz, showing how to build a .NET application around the visualization toolkit, but also how to integrate your data visualization into existing applications such as Unity or Microsoft Office.

You can register using this form to make sure you do not miss any update : https://forms.gle/T1LwzivKmcer7nqF6.

Please join us at : https://vimeo.com/422391226.

Click to add to your calendar.

You will be able to interact with the presenter via the chat to ask questions or precisions.

2 Likes

The Webinar is in 30 minutes !

Thank you everyone for attending the webinar.
We really want to apologize for the connection issues we experienced at the end of the presentation.
We will try to upload a new video in the next days to fix this.

In addition, the microphone connection was lost after the live demo, so nobody heard the answers to questions nor the thanks.
Here are some interesting questions that were asked:

  • Is the c# “new” keyword no longer supported in Activiz 9?
    You should still be able to use the “new” keyword when instantiating vtkObjects. In the end it calls the exact same constructor as the vtkObject.New() approach.

  • Does the c# code not compile with Mono on Linux?
    In theory ActiViz should work with some cross-platform implementation of the .NET Framework. But we don’t test it so it is considered unsupported for now. We have cross-platform support based on .NETCore that should be available before the end of the year.

  • Can I compile ActiViz myself?
    Unfortunately, no. ActiViz is now closed source.
    ActiViz 5.8 binaries are available online if you want to try them. And you can request a trial version on the ActiViz website to give a try to the latest version.

Please do not hesitate to share your thoughts or further ask questions here.
Thanks again to everyone for attending!

2 Likes

How should I derive a class from activiz.net, for example from vtkCommand.

My last question wasn’ t answered. VTK now expects utf8 string parameters. Does Activiz 9 handle the UTF-16 (MS Unicode string) to UTF-8 conversion across the boundary?

ActiViz only exposes the public interface of VTK classes. The protected methods cannot be accessed so there are no huge benefits deriving VTK classes in ActiViz.
If you want to add observers on your VTK objects in ActiViz, you should have a look at event handlers instead of vtkCommand.
For instance you can observe the EndInteractionEvent of a widget using the following:

boxWidget.EndInteractionEvt += new vtkObject.vtkObjectEventHandler(OnEndInteraction);

And define the corresponding callback like this:

public static void SelectPolygons(vtkObject sender, vtkObjectEventArgs e)

VTK now expects utf8 string parameters. Does Activiz 9 handle the UTF-16 (MS Unicode string) to UTF-8 conversion across the boundary?

Unfortunately ActiViz 9.0 does not handle the conversion. We are currently working on introducing this in the next ActiViz release. I will make sure to keep you posted as soon as we have a solution for this.

In the meantime you can use the following:

byte utf16Bytes = Encoding.Unicode.GetBytes(utf16String);
byte utf8Bytes = Encoding.Convert(Encoding.Unicode, Encoding.UTF8, utf16Bytes);
Encoding.Default.GetString(utf8Bytes);

How does that help if Activiz string parameters are marshaled as UTF-16 not UTF-8? The input/output is incompatible.

You are right sorry for not providing more information.
There is indeed an implicit conversion that is done but it will just work for letters and numbers.
The snippet I shared can be used to handle special characters.