Grasshopper

algorithmic modeling for Rhino

How to find previous version of rhino(both evaluation and wip)?

Hi,

A plugin I wrote with 0.8.0051 in Rhino 11/03 is compatible with 0.8.0062 in Rhino 11/30, but will throw something like "RhinoList cannot get enumerator" error when in Rhino 12/14 version.

I don't plan to dig what's wrong but I want to switch back to previous version of Rhino WIP(32&64), and also give previous evaluation versions(32&64) to my students to go around this.

Are there links available to download?

Thanks,

-Jerome

Views: 3084

Replies to This Discussion

Hi Jerome,

this was a necessary change in the RhinoList(Of T) class, because there was a consistency issue with the enumerator. It will be enough to recompile the project with the new RhinoCommon.dll referenced and, if it worked before, it is highly probable it will work again.*

Sorry if this caused inconveniences. Grasshopper, when opening in Rhino 4, is not affected. We need to change this before RhinoCommon goes out of the beta period. Upcoming versions of Grasshopper should also be shipping with the upgraded enumerator.

- Giulio
________________
giulio@mcneel.com

 

* All the geeky details here.
The previous version of RhinoList(Of T) returned a non-generic IEnumerable. This means that, if you used a Foreach loop on it, and you had a value type in it, all objects would have been boxed and unboxed (putting unnecessary pressure on the Garbage Collector). Even more serious, for many operation you were forced to add an implicit cast, that made working with RhinoList much more difficult and error-prone.

For these reasons, we decided that GetEnumerator(), from now on, will return a generic IEnumerable(Of T).

Ah, almost forgotten. If you need nevertheless to revert to an older version of Rhinoceros 5 WIP, you can visit the folder:

%programdata%\McNeel\

then you'll find either a RhinoUpdates32 or RhinoUpdates64, depending which versions of Rhino 5 you use. In here, browsing by product and date, there should be the last 3-4 installers.

Thanks again, Giulio.

Looks like the installer exists only if I have installed it before, right? How about the evaluation versions? Because I am not quite sure if my students have installed previous versions of the evaluation copies and maybe it's impossible for them to revert to an earlier version.

Is there an address for me to download 11/30 evaluation installation?

Thanks,

-Jerome

Hi Jerome,

in general, we do not distribute older evaluation versions - and we are not suggesting to install v5 evaluation versions unless needed yet.

For any question or suggestion, please contact me at the email address below, or David.

Thanks,

- Giulio
________________
giulio@mcneel.com

Thanks,

I see. So the best option is to recompile with the new Rhinocommon:)

Thanks!

-Jerome

Thanks, Giulio.

It's a cool upgrade and I think this will surely make the component work a lot faster.

One more question here. When should I use RhinoList instead of List? Inside c# component, I'm using List a lot and haven't felt any necessity to use RhinoList.

Thanks,

-Jerome

It's up to you. RhinoList works exactly in the same way but it does not need to be copied in several occasions to a new array because Rhino knows about the memory address of the inner array.

Thanks,

- Giulio
________________
giulio@mcneel.com

Thanks again, Giulio.

This means using the RhinoList whenever possible will eventually result in less computing time, right?

Thanks,

-Jerome

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service