Mesh.CreateFromTorus Fails With Plane.WorldXY (Bug?)

Hi All,

I’ve hit an odd issue I can’t seem to resolve: If I make a Torus using an XY Plane input from the Grasshopper canvas, I can create a mesh from it no problemo. However, if it make the WorldXY plane within the script, the meshing fails and return nothing:


240514_MeshTorusIssue_00.gh (4.9 KB)

System Info

Rhino 7 SR37 2024-4-16 (Rhino 7, 7.37.24107.15001, Git hash:master @ d2e42f70b9d3aa58f6053e2998a0db2abcd7555b)
License type: Commercial, build 2024-04-16
License details: Cloud Zoo

Windows 11 (10.0.22631 SR0.0) or greater (Physical RAM: 32Gb)

Computer platform: LAPTOP - Plugged in [100% battery remaining]

Hybrid graphics configuration.
Primary display: Intel(R) Iris(R) Xe Graphics (Intel) Memory: 1GB, Driver date: 11-7-2023 (M-D-Y).
> Integrated graphics device with 4 adapter port(s)
- Windows Main Display is laptop’s integrated screen or built-in port
Primary OpenGL: NVIDIA RTX 2000 Ada Generation Laptop GPU (NVidia) Memory: 8GB, Driver date: 6-26-2023 (M-D-Y). OpenGL Ver: 4.6.0 NVIDIA 536.45
> Integrated accelerated graphics device (shares primary device ports)
- Video pass-through to primary display device

OpenGL Settings
Safe mode: Off
Use accelerated hardware modes: On
Redraw scene when viewports are exposed: On
Graphics level being used: OpenGL 4.6 (primary GPU’s maximum)

Anti-alias mode: 8x
Mip Map Filtering: Linear
Anisotropic Filtering Mode: High

Vendor Name: NVIDIA Corporation
Render version: 4.6
Shading Language: 4.60 NVIDIA
Driver Date: 6-26-2023
Driver Version: 31.0.15.3645
Maximum Texture size: 32768 x 32768
Z-Buffer depth: 24 bits
Maximum Viewport size: 32768 x 32768
Total Video Memory: 8188 MB

Rhino plugins that do not ship with Rhino
C:\Users\andersh\AppData\Roaming\McNeel\Rhinoceros\packages\7.0\BIG_RhinoRibbon\1.0.8886.16690\BIG_RhinoRibbon.rhp “BIG_RhinoRibbon” 1.0.8886.16690

Rhino plugins that ship with Rhino
C:\Program Files\Rhino 7\Plug-ins\Commands.rhp “Commands” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\rdk.rhp “Renderer Development Kit”
C:\Program Files\Rhino 7\Plug-ins\RhinoRenderCycles.rhp “Rhino Render” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\rdk_etoui.rhp “RDK_EtoUI” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\rdk_ui.rhp “Renderer Development Kit UI”
C:\Program Files\Rhino 7\Plug-ins\NamedSnapshots.rhp “Snapshots”
C:\Program Files\Rhino 7\Plug-ins\IronPython\RhinoDLR_Python.rhp “IronPython” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\RhinoCycles.rhp “RhinoCycles” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\Grasshopper\GrasshopperPlugin.rhp “Grasshopper” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\Toolbars\Toolbars.rhp “Toolbars” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\3dxrhino.rhp “3Dconnexion 3D Mouse”
C:\Program Files\Rhino 7\Plug-ins\Displacement.rhp “Displacement”

Any ideas of why this might happen?

Thanks and best,

Anders

I just tried making a world XY plane “manually” within the script and that also appears to work:


240514_MeshTorusIssue_01.gh (4.1 KB)

So I wonder what I might be missing here :thinking:

Bump…

I see that too, both in v7 and in v8 with the new Python3 editor. I’ll see what I can find out about this.

https://mcneel.myjetbrains.com/youtrack/issue/RH-82169/

A fix has been created for Rhino 8 SR9.

1 Like

Cheers Menno. Just out of curiosity, any chance you can reveal the source of the issue? Couldn’t tell from the Youtrack information :eyes:

The torus is defined by a plane and two radii. When a plane gets created in .NET/RhinoCommon and needs to be used in the C++ code (in this case for creating a mesh on a torus), the plane’s equation needs to be updated prior to using it in C++, otherwise the plane is not valid and the code will bail. This updating of the plane euqation was not done in the C++ code for creating a mesh on a torus.

1 Like