Using Rhino3dm in Blender

Also Nathan,
I am trying to (succeed first … then) document for others the way to install your Import 3dm add-on in Blender.
There seems to be difficulties for many people like me, so I have gone up a point in the installation and recorded my problems to continue.
I have posted on the BlenderArtists forum, on your thread there.
Would you please take a look and help?
Ty

1 Like

The solution for Mac and Win users is going to be that the addon will be released with rhino3dm bundled

@nathanletwory is there anything I can do with the rhino3dm.py project to make this easier?

@stevebaer the problem is more of a Blender-side problem. The easiest for me to have the import_3dm be easy to install and use for users is to bundle rhino3dm with the add-on so that users don’t have to bother with any technicalities of that part.

Right now I’m looking into ensuring a rhino3dm package I build on the mac has the deployment target set to 10.13. Not sure really if 10.12 is still supported for Blender.

Until that time, would you please take a few moments to explain? I have proceeded enough to have specific questions and I think answering these will allow me to complete the installation of the converter.
If I and others understand the process we may be able to use your add-on and contribute helping others.
I am running Blender 2.81a under Windows 7 pro X64
I have tried using the Python executable that comes with every version of Blender (that is version 3.7.4 with Blender 2.81) and a separate installation (from Download Python | Python.org ) of Python 3.7.7 as a Windows application.
With both these I have tried the following steps:

Step 1: Open a cmd window by pressing Win + R, enter cmd and press return
Step 2: type “pip install rhino3dm --user” and press return

In all cases I get the reply that :
‘pip’ is not recognized as an internal or external command, operable program or batch file
My questions :

  • Q1 The only executable available that I see after installing Python v.3.7.7 in the /Programs folder, is python.exe
    I have checked that I can run it and it is functioning properly as an interpreter, executing a basic print(“hello world”) command
    However pip is supposed to be executed at the Windows command prompt (according to instructions) and not within the interpreter? How does that work and why does Windows not recognize it?
  • Q2 There is already another instance of python.exe in every installation of Blender in the subfolder …/2.81/python/bin
    Can I use this python executable? Do I really need the installation of Python separately (as in Q1) ?
    If I need the separate installation, how does Blender and the Add-on know of the “pip install rhino3dm” (if I ever manage to succeed installing)?

Hey, I’ve changed how import_3dm is released for windows and mac. Instead of relying on pip to get it all installed I now bundle rhino3dm module with the add-on zip files. Linux I haven’t addressed yet.

Please get the correct zip archive for your platform on

Let me know if using this latest version gets you going.

6 Likes

Awesome! the installation process was much smoother this time with everything in the .zip

Gave the Block import a try and it works great (minus the textures).

I might be out of my depth here but is it possible to copy the texture directory across so the material reads the bitmap from the same place in both applications?

It’d be great to do that at some point. I think the rhino3dm library has support for accessing embedded texture images.

1 Like

This project is super-exciting!

Quick: For someone who has ZERO dev-knowledge and opens up the latest “import_3dm” and “rhino3dm” folders, what are the steps to get the add-on installed in Blender?

Wish I knew anything about coding, but all of this looks Greek to my eyes :smile:

In Blender you should go to the add-ons section in the preferences, and install the add-on by selecting the zip. Nothing else needed for you to do, no extraction or anything. Just install and enable.

I must be doing something wrong :confused:

From the latest link (Release import_3dm v0.0.7 · jesterKing/import_3dm · GitHub) I downloaded the zip “import_3dm-v0.0.7.macos.zip”.

In Blender 2.90a for Mac I go to Edit → Preferences → Add-ons → Install

  1. I locate and select the zip folder, and press “Install Add-on” (screenshot)

  1. This takes me into the folder, strangely, so I press “Install Add-on” again (screenshot)

  1. I get taken back to the Preferences window as if nothing happened… (screenshot)

Is there something important I am missing? Tried the exact same in version 2.82 with same results.

Thank you for your help!

I made a small mistake while creating the zip file. I have re-uploaded it to the github releases page. Please redownload and install the zip (don’t uncompress or open the zip with Finder).

Installing goes like so:

1 Like

You’re the man! It works!!

This Add-on is a huge deal! Appreciate your work, much respect :fist:

@jesterking Not your fault, btw. I noticed that for Safari (Mac) users, the browser will automatically unzip files after download. To stop Safari from doing this:

Safari --> Preferences --> General --> Uncheck “Open ‘safe’ files after download”

In this case you fixed it for us, which is great, but with other Add-ons for Blender the issue will presist unless this option is unchecked. :wink:

Hi Nathan,

This is just terrific. I downloaded the Rhino importer this morning and have been playing around with it. Thank you VERY much for your work on this, it’s great.

I do have one question, or maybe it’s a request, i’m not sure if I’m not taking a step or something is why I put it that way.

When I import a 3dm into Blender, none of my texture mapping or image maps come through. In order to texture map i have to unwrap all of my surfaces and re-assign all image maps. This is not the case when importing a OBJ file exported from Rhino and imported into Blender. With OBJs all of the correct texture mapping and image maps come through just fine. The issue with OBJs is the scale is not correct (i’ve tried both metric and imperial tests – strange because a Collada import preserves the scale just fine). In any case . . .

Is there anything I can do to make the texture mapping come in via 3dm import into Blender?

If not, is preserving texture mapping something possible for you to add in future versions of the 3dm importer?

Thanks Nathan,
Ryan

Textures aren’t imported yet. There is not much you can do apart from maybe writing the code to do so (: It is on the list to add, though.

Ok, gotcha. Thank you, and I’m glad to hear that this is on the list, it will save a bit of time. I started a project in Rhino, did renders, now the client wants to see an animation, so I’m getting everything over to Blender for this one.

Thank you Nathan!
Ryan

Hi @nathanletwory,

Does the importer support blocks entities? I tried with a simple file and it doesn’t import properly. Here is the file in case you want to take a look.
Drawers.3dm (218.9 KB)

a while back I added an experimental option to import blocks into collection instances, did you try the checkbox? I have to admit though that I haven’t worked on it in quite a while, life, work, etc… I’ll check your file later and get back to you…

@jespizua: it works as expected here with the latest version. you need to check the following box:
image

this creates a collection for every block and instances it into the scene. the problem is, that the instance definition and the objects inside the definition are also still visible in the scene. you have to hide them by hand. if you have any suggestion on how you normally handle this, or how you think blocks should work in blender, feel free to give some input. i still have to come up with a better workflow than whats there so far…