Say Hello to Aviary

Awesome, glad to hear it!

Hi David, I recently found Avery on Food4Rhino - it got me really excited as I’ve been itching for a way to do some procedural SVG artwork and infographics for a while now. However, it seems like a few components don’t quite work in Rhino 5 for Mac. Is this something you might have time to look into? I’m happy to provide any additional details or error reports. Thanks again for developing such an awesome plugin!

Unfortunately this is a big issue that will take a while to address. Many of the Aviary components are built on wpf and a majority rely on .net libraries not present on mac. Disentangling Aviary from .net dependencies is a very tall order. That being said, most of the functionality of the SVG content as well as the Three.JS work does not really need to reference these resources. So long term, it is on the backlog, but short to medium term (months) Aviary will not be the most Mac friendly sadly.

Taking a break form the Three.js and svg updates to look at embedding a Rhino 6 viewport in the wpf window.
I had the privilege of spending time at McNeel’s offices last week with the Thronton Tomasetti CORE group and among many things, got a crash course on using Eto within the .net framework.

Here is the first test of implementing:

  • zoom extents / selected
  • changing camera projections
  • toggling grids & guide

Very cool and simple to get going (Im falling in love with the promise of Eto) and will make dashboard and report production incredibly powerful.

A few things I have not yet been able to successfully implement in the WPF hosting that will round off the desired application:

  • Antialiasing
  • Mouse Zoom / Pan
  • GH geometry does not preview, requires baking
  • Shading or anything but wireframe. I know its possible, not sure if the issue is WPF or my implementation.

The biggest issue has been setting the display mode, this is an edited snippet of the steps

    public ViewportControl RhinoViewer = new ViewportControl(); 
        //Option 1 (Not working)
        RhinoViewer.Viewport.DisplayMode = Rhino.Display.DisplayModeDescription.FindByName("Shaded");

        //Option 2 (Not working)
        RhinoViewer.Viewport.DisplayMode = Rhino.Display.DisplayModeDescription.GetDisplayModes()[0];

I know the DisplayModeDescription is working because I have been passing it as an output from the component to check, but I must be doing something wrong in applying the DisplayMode to the viewport.

5 Likes

3 posts were split to a new topic: Viewport Control Bugs

What is formatting platform?

GH cant find all components (despite meticulous unblocking of library files). Ideas anyone?

Thanks for the great tool @DavidMans! Referring to your January 31 GIF. It seems to be a bit less smooth when you use a slider in window to do those same adjustments, is that right? or am I wrong?

Yes, when the slider is being moved a html file is being written with the full three.js scene then read by a web browser component and then drawn to the window. This does result in a delay. Some minor improvements in the speed will be gained in the next release, where the scene and the geometry will be written to separate files. However there will always be somewhat of a delay. The alternate method of using the WPF viewer will be faster, but with less options. And the third option, available in Rhino 6 only, will using the Rhino viewport in a window as a control. This will be the fastest of all the options, but is just a viewer to Rhino, which means that you will always need Rhino and GH to be open. The advantage the Three.js viewer has, is that the model is written to the file and can be opened in any browser.

@laurent_delrieu This looks very interesting. I’m really curious on how you managed to cluster the meshes, can you shed some light on this?

Here the explanation

Hi, I was wondering if Aviary(or any of its libraries) can be use for playing a video file,something similar to the Dashboard.Control.Frame for Bitmaps?

Antonio, not currently.
The only way would be to use the browser component, which is just a simple WPF web browser.
I’ll look into adding a component in for video playing next release.

Hello David, Do you have an example of the implementation of aviary to save to three.js? I’m confused on how to achieve that,

thanks

Unfortunately it is still under development and not available in the current release.
I paused development due to other obligations and the need to develop a new version of Mesh+
Hopefully I will get back to developing Aviary shortly and release an update.
There are a lot of improvements to bitmap manipulation coming as well.

2 Likes

Thanks! I´m sure will worth the wait, also a new mesh+ sounds exiting!!

It’s been a while since I followed up on this thread, looks like there has been a bunch of development. Looking forward to testing out the new versions!

Cheers,
Marc

New Mesh+, yes!

1 Like

hI!!

Is it possible to export as SVG a chart??

Is it possible to export a chart as SVG?

thanks!