Joining curves changes their geometry

I am using Rhino 8 version SR4 on Windows. I am noticing that when I join certain curves, the geometry of the resulting joined curve is altered slightly:

I have tried exploding everything first, as well as using the convert command. This seems very minor, but I want to be able to join curves knowing that everything stayed exactly where it was before the command. Any thoughts:

System info:

Rhino 8 SR4 2024-2-6 (Rhino 8, 8.4.24037.15001, Git hash:master @ bee9cb852c752350676ca6bc7f3f6946b5bbc6b7)
License type: Commercial, build 2024-02-06
License details: Stand-Alone

Windows 11 (10.0.22000 SR0.0) or greater (Physical RAM: 32GB)
.NET 7.0.0

Computer platform: DESKTOP

Standard graphics configuration.
Primary display and OpenGL: NVIDIA GeForce GTX 1050 Ti (NVidia) Memory: 4GB, Driver date: 10-18-2023 (M-D-Y). OpenGL Ver: 4.6.0 NVIDIA 537.70
> Accelerated graphics device with 4 adapter port(s)
- Windows Main Display attached to adapter port 0
- Secondary monitor attached to adapter port 1

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: 4x
Mip Map Filtering: Linear
Anisotropic Filtering Mode: High

Vendor Name: NVIDIA Corporation
Render version: 4.6
Shading Language: 4.60 NVIDIA
Driver Date: 10-18-2023
Driver Version: 31.0.15.3770
Maximum Texture size: 32768 x 32768
Z-Buffer depth: 24 bits
Maximum Viewport size: 32768 x 32768
Total Video Memory: 4 GB

Rhino plugins that do not ship with Rhino

Rhino plugins that ship with Rhino
C:\Program Files\Rhino 8\Plug-ins\Commands.rhp “Commands” 8.4.24037.15001
C:\Program Files\Rhino 8\Plug-ins\WebBrowser.rhp “WebBrowser”
C:\Program Files\Rhino 8\Plug-ins\rdk.rhp “Renderer Development Kit”
C:\Program Files\Rhino 8\Plug-ins\RhinoScript.rhp “RhinoScript”
C:\Program Files\Rhino 8\Plug-ins\IdleProcessor.rhp “IdleProcessor”
C:\Program Files\Rhino 8\Plug-ins\RhinoRenderCycles.rhp “Rhino Render” 8.4.24037.15001
C:\Program Files\Rhino 8\Plug-ins\RhinoRender.rhp “Legacy Rhino Render”
C:\Program Files\Rhino 8\Plug-ins\rdk_etoui.rhp “RDK_EtoUI” 8.4.24037.15001
C:\Program Files\Rhino 8\Plug-ins\NamedSnapshots.rhp “Snapshots”
C:\Program Files\Rhino 8\Plug-ins\MeshCommands.rhp “MeshCommands” 8.4.24037.15001
C:\Program Files\Rhino 8\Plug-ins\RhinoCycles.rhp “RhinoCycles” 8.4.24037.15001
C:\Program Files\Rhino 8\Plug-ins\RhinoCode\RhinoCodePlugin.rhp “RhinoCodePlugin” 8.4.24037.15001
C:\Program Files\Rhino 8\Plug-ins\Toolbars\Toolbars.rhp “Toolbars” 8.4.24037.15001
C:\Program Files\Rhino 8\Plug-ins\3dxrhino.rhp “3Dconnexion 3D Mouse”
C:\Program Files\Rhino 8\Plug-ins\Displacement.rhp “Displacement”
C:\Program Files\Rhino 8\Plug-ins\SectionTools.rhp “SectionTools”

File:

EMER_023_JOIN PROBLEM.3dm (2.4 MB)

Thanks!

Seems like your tolerances are too low for the size of the features you’re working on. I’d try bumping them up to .0003" or something like that.

Hi Ben, I’d also consider replacing the junky overly complex parts of the curve there with a clean and simple one like a blend curve.

-Pascal

@phcreates I believe this solved it, thank you.

@pascal also a valid solution, thank you.

Please mark solution so others like me do not need to read the topic. Thanks

@Ben_Schmanke - my comment was not to fix the join problem, the tolerance is the issue there, but just as a generally good thing to do when the curves are this messy.

-Pascal

This looks like a bug. There is no reason for Rhino to be changing the curves
This has nothing to do with tolerance or how junky someone thinks your curves are.
This is just a bug it should not happen , at least without the informed consent of the user.

Since when does Rhino think its proper to join an open polyline with 20 points to a open polyline with 31 points and get a open polyline with 42 points?
On what basis is McNeel deciding to redesign those curves?

The help for join states :
" Degrees and control points will not change when curves with different degrees are joined."

1 Like