Hi @eirannejad
One of the recent updates causes Rhino to crash on Mac when using Open3D. I’m not sure if it’s an Open3D or Rhino issue, but the code works fine on Windows.
I’ve tried reinstalling the environment.
Here is an example:
open3d eks.gh (5.1 KB)
# r: numpy
# r: scikit-learn
# r: open3d
import open3d as o3d
import numpy as np
import Rhino.Geometry as rg
pcloud_pts = pcloud.GetPoints()
pts_lst = [[p.X,p.Y,p.Z] for p in pcloud_pts]
pts_arr = np.array(pts_lst)
o3d_pcloud = o3d.geometry.PointCloud()
o3d_pcloud.points = o3d.utility.Vector3dVector(pts_arr)
KDTree = o3d.geometry.KDTreeSearchParamKNN(20)
o3d_pcloud.estimate_normals(search_param=KDTree, fast_normal_computation=True)
o3d_pcloud.orient_normals_to_align_with_direction() # <--- this line makes rhino crashe
best,
Johan
eirannejad
(Ehsan Iran-Nejad)
May 30, 2025, 11:42pm
3
@Johan_Lund_Pedersen Would you mind sharing your SystemInfo
? Also do you know a version of Rhino that this script works on and does not crash?
Hi @eirannejad .
Thank you for getting back to me. Here’s the information:
Remember to uncomment the line in the script.
best,
Johan
Ehsan Iran-Nejad:
SystemInfo
Rhino 8 SR19 2025-5-12 (Rhino 8, 8.19.25132.01002, Git hash:master @ 57e3eb280b0f32cbe59f53a554be5e8ffa66fc36)
License type: Educational, build 2025-05-12
License details: Cloud Zoo
Apple macOS Version 15.5 (Build 24F74) (Physical RAM: 8GB)
Mac Model Identifier: iMac21,1
Language: en-DK (MacOS default)
.NET 7.0.0
Metal GPU Family Apple 7
Metal GPU Family Common 3
Metal GPU Family Mac 2
Graphics processors
Apple M1
iMac (2240 x 1260 @ 60.00Hz)
MAG321UP OLED (3840 x 2160 @ 120.00Hz)
GPU Vendor: Apple
USB devices
VLI Inc.: USB 2.0 BILLBOARD
Apple Inc.: Apple Watch Magnetic Charging Cable
Bluetooth devices
None
Third party kernel extensions
None
Third party plugins
/usr/lib/swift/libswiftCore.dylib
/usr/lib/swift/libswiftObjectiveC.dylib
/usr/lib/swift/libswiftCoreFoundation.dylib
/usr/lib/swift/libswiftDarwin.dylib
/usr/lib/swift/libswiftDispatch.dylib
/usr/lib/swift/libswiftIOKit.dylib
/usr/lib/swift/libswiftSystem.dylib
/usr/lib/swift/libswiftXPC.dylib
/usr/lib/swift/libswift_Builtin_float.dylib
/usr/lib/swift/libswift_Concurrency.dylib
/usr/lib/swift/libswift_StringProcessing.dylib
/usr/lib/swift/libswift_errno.dylib
/usr/lib/swift/libswift_math.dylib
/usr/lib/swift/libswift_signal.dylib
/usr/lib/swift/libswift_stdio.dylib
/usr/lib/swift/libswift_time.dylib
/usr/lib/swift/libswiftos.dylib
/usr/lib/swift/libswiftsys_time.dylib
/usr/lib/swift/libswiftunistd.dylib
/usr/lib/swift/libswiftDistributed.dylib
/usr/lib/swift/libswiftObservation.dylib
/usr/lib/swift/libswiftSynchronization.dylib
/usr/lib/swift/libswiftMetal.dylib
/usr/lib/swift/libswiftOSLog.dylib
/usr/lib/swift/libswiftQuartzCore.dylib
/usr/lib/swift/libswiftUniformTypeIdentifiers.dylib
/usr/lib/swift/libswiftsimd.dylib
/usr/lib/swift/libswiftRegexBuilder.dylib
/usr/lib/swift/libswift_RegexParser.dylib
/usr/lib/swift/libswiftCoreAudio.dylib
/usr/lib/swift/libswiftCryptoTokenKit.dylib
/usr/lib/swift/libswiftAVFoundation.dylib
/usr/lib/swift/libswiftCoreLocation.dylib
/usr/lib/swift/libswiftCoreMIDI.dylib
/usr/lib/swift/libswiftCoreMedia.dylib
/usr/lib/swift/libswiftCoreImage.dylib
/usr/lib/swift/libswiftAccelerate.dylib
/usr/lib/swift/libswiftNaturalLanguage.dylib
/usr/lib/swift/libswiftMLCompute.dylib
/usr/lib/swift/libswiftCompression.dylib
/usr/lib/swift/libswiftDataDetection.dylib
/usr/lib/swift/libswiftCoreGraphics.dylib
/usr/lib/swift/libswiftFoundation.dylib
/usr/lib/swift/libswiftSwiftOnoneSupport.dylib
/usr/lib/usd/libusd_ms.dylib
/usr/lib/swift/libswiftIntents.dylib
/usr/lib/swift/libswiftSpatial.dylib
/usr/lib/swift/libswiftPassKit.dylib
/usr/lib/swift/libswiftAppleArchive.dylib
/usr/lib/swift/libswiftDemangle.dylib
/usr/lib/swift/libswiftVideoToolbox.dylib
/usr/lib/swift/libswiftGameplayKit.dylib
/usr/lib/swift/libswiftSpriteKit.dylib
/usr/lib/swift/libswiftGLKit.dylib
/usr/lib/swift/libswiftMetalKit.dylib
/usr/lib/swift/libswiftModelIO.dylib
/usr/lib/swift/libswiftSceneKit.dylib
/usr/lib/swift/libswiftMapKit.dylib
/usr/lib/log/liblog_network.dylib
/Users/johanlund/.rhinocode/py39-rh8/libpython3.9.dylib
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_heapq.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_ssl.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/libssl.1.1.dylib
/Users/johanlund/.rhinocode/py39-rh8/libcrypto.1.1.dylib
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_socket.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/math.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/select.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/array.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_struct.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/binascii.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/zlib.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_bz2.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_lzma.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/grp.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_bisect.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_random.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_sha512.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_ctypes.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_posixsubprocess.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/open3d/cpu/pybind.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/open3d/libomp.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/_core/_multiarray_umath.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_datetime.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_pickle.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_contextvars.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/_core/_multiarray_tests.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/linalg/_umath_linalg.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_csv.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_opcode.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_uuid.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_hashlib.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_blake2.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_json.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/markupsafe/_speedups.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_scproxy.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/unicodedata.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_decimal.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_asyncio.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_queue.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/__check_build/_check_build.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_multiprocessing.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/mmap.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_posixshmem.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/_lib/_ccallback_c.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/random/bit_generator.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/random/_common.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/random/mtrand.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/random/_bounded_integers.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/random/_mt19937.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/random/_philox.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/random/_pcg64.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/random/_sfc64.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/random/_generator.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/numpy/fft/_pocketfft_umath.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/charset_normalizer/md.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/charset_normalizer/md__mypyc.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_multibytecodec.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/_sparsetools.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/_csparsetools.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/linalg/_fblas.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/.dylibs/libopenblas.0.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/.dylibs/libgfortran.5.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/.dylibs/libquadmath.0.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/.dylibs/libgcc_s.1.1.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/linalg/_flapack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/linalg/_cythonized_array_utils.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/linalg/cython_lapack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/linalg/_solve_toeplitz.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/linalg/_decomp_lu_cython.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/linalg/_matfuncs_sqrtm_triu.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/linalg/_matfuncs_expm.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/linalg/cython_blas.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/linalg/_decomp_update.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/linalg/_dsolve/_superlu.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/linalg/_eigen/arpack/_arpack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/linalg/_propack/_spropack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/linalg/_propack/_dpropack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/linalg/_propack/_cpropack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/linalg/_propack/_zpropack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/csgraph/_shortest_path.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/csgraph/_tools.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/csgraph/_traversal.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/csgraph/_min_spanning_tree.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/csgraph/_flow.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/csgraph/_matching.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/sparse/csgraph/_reordering.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/special/_ufuncs.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/special/_ufuncs_cxx.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/special/_cdflib.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/special/_specfun.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/special/_comb.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/special/_ellip_harm_2.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/spatial/_ckdtree.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/spatial/_qhull.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/_lib/messagestream.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/spatial/_voronoi.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/spatial/_distance_wrap.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/spatial/_hausdorff.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/spatial/_distance_pybind.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/spatial/transform/_rotation.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/ndimage/_nd_image.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/ndimage/_ni_label.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_minpack2.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_group_columns.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_trlib/_trlib.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_lbfgsb.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_moduleTNC.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_cobyla.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_slsqp.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_minpack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_lsq/givens_elimination.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_zeros.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_highs/_highs_wrapper.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_highs/_highs_constants.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/linalg/_interpolative.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_bglu_dense.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_lsap.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_pava_pybind.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/optimize/_direct.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/integrate/_odepack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/integrate/_quadpack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/integrate/_vode.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/integrate/_dop.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/integrate/_lsoda.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_stats.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/special/cython_special.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_boost/beta_ufunc.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_boost/binom_ufunc.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_boost/nbinom_ufunc.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_boost/hypergeom_ufunc.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_boost/ncf_ufunc.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_boost/ncx2_ufunc.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_boost/nct_ufunc.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_boost/skewnorm_ufunc.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_boost/invgauss_ufunc.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/interpolate/_fitpack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/interpolate/dfitpack.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/interpolate/_bspl.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/interpolate/_ppoly.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/interpolate/interpnd.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/interpolate/_rbfinterp_pythran.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/interpolate/_rgi_cython.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_biasedurn.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_levy_stable/levyst.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_stats_pythran.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/_lib/_uarray/_uarray.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/fft/_pocketfft/pypocketfft.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_ansari_swilk_statistics.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_sobol.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_qmc_cy.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_mvn.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_rcont/rcont.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/scipy/stats/_unuran/unuran_wrapper.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/pandas_parser.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/pandas_datetime.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/interval.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/hashtable.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/missing.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/dtypes.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/ccalendar.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/np_datetime.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/conversion.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/base.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/offsets.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/timestamps.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/nattype.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/timedeltas.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/timezones.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/_zoneinfo.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/fields.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/tzconversion.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/properties.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/parsing.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/strptime.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/period.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslibs/vectorized.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/ops_dispatch.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/algos.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/lib.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/ops.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/hashing.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/arrays.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/tslib.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/sparse.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/internals.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/indexing.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/index.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/writers.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/join.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/window/aggregations.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/window/indexers.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/reshape.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/groupby.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/json.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/parsers.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/pandas/_libs/testing.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/lib/python3.9/lib-dynload/cmath.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/_isfinite.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/sparsefuncs_fast.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/murmurhash.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/_openmp_helpers.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/.dylibs/libomp.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/neighbors/_ball_tree.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/metrics/cluster/_expected_mutual_info_fast.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/preprocessing/_csr_polynomial_expansion.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/preprocessing/_target_encoder_fast.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/metrics/_dist_metrics.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/metrics/_pairwise_distances_reduction/_argkmin.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/metrics/_pairwise_distances_reduction/_base.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/metrics/_pairwise_distances_reduction/_datasets_pair.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/_cython_blas.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/metrics/_pairwise_distances_reduction/_middle_term_computer.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/_heap.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/_sorting.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/metrics/_pairwise_distances_reduction/_argkmin_classmode.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/metrics/_pairwise_distances_reduction/_radius_neighbors.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/_vector_sentinel.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/metrics/_pairwise_distances_reduction/_radius_neighbors_classmode.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/metrics/_pairwise_fast.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/neighbors/_partition_nodes.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/neighbors/_kd_tree.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/arrayfuncs.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/_seq_dataset.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/_random.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/linear_model/_cd_fast.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/_loss/_loss.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/svm/_liblinear.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/svm/_libsvm.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/svm/_libsvm_sparse.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/linear_model/_sag_fast.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/linear_model/_sgd_fast.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/utils/_weight_vector.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/decomposition/_online_lda_fast.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/sklearn/decomposition/_cdnmf_fast.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/yaml/_yaml.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/PIL/_imaging.cpython-39-darwin.so
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/PIL/.dylibs/libtiff.6.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/PIL/.dylibs/libjpeg.62.4.0.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/PIL/.dylibs/libopenjp2.2.5.3.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/PIL/.dylibs/libz.1.3.1.zlib-ng.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/PIL/.dylibs/libxcb.1.1.0.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/PIL/.dylibs/liblzma.5.dylib
/Users/johanlund/.rhinocode/py39-rh8/site-envs/default-cwejundN/PIL/.dylibs/libXau.6.dylib
Rhino plugins that do not ship with Rhino
Rhino plugins that ship with Rhino
/Applications/Rhino 8.app/Contents/Frameworks/RhMaterialEditor.framework "Renderer Development Kit" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/Commands.rhp "Commands" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/PlugIns/NamedSnapshots.rhp "Snapshots" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RDK_EtoUI.rhp "RDK_EtoUI" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/MeshCommands.rhp "MeshCommands" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoRenderCycles.rhp "Rhino Render" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoCycles.rhp "RhinoCycles" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/PlugIns/SectionTools.rhp "SectionTools" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/PlugIns/Displacement.rhp "Displacement" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/PlugIns/PanelingTools.rhp "PanelingTools" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoDLR_Python.rhp "IronPython" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/GrasshopperPlugin.rhp "Grasshopper" 8.19.25132.1002
/Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoCodePlugin.rhp "RhinoCodePlugin" 8.19.25132.1002
1 Like
eirannejad
(Ehsan Iran-Nejad)
June 4, 2025, 1:40am
6
@Johan_Lund_Pedersen
This ended up being more complicated that I thought:
Does not crash on Windows (open3d v0.19.0
gets installed)
Works on independent python 3.9.10 on macOS (open3d v0.18.0
gets installed as that is the only one with arm64
binaries)
Verified open3d
that gets installed under Rhino is the same binary as the one installed under independent python 3.9.10
Installing open3d
under site-packages
still crashes
Disabling pythonnet scope pre/post shenanigans still crashes
Only clean installing open3d
still crashes
This is the call stack from crashing thread when calling orient_normals_to_align_with_direction()
:
5 libsystem_platform.dylib 0x18fd8c624 _sigtramp + 56
6 pybind.cpython-39-darwin.so 0x3db4ef1c8 0x3d9bcc000 + 26358216
7 pybind.cpython-39-darwin.so 0x3db55e48c 0x3d9bcc000 + 26813580
8 pybind.cpython-39-darwin.so 0x3db33256c 0x3d9bcc000 + 24536428
9 libpython3.9.dylib 0x3bb7173a0 cfunction_call + 84
10 libpython3.9.dylib 0x3bb6d4a8c _PyObject_MakeTpCall + 360
11 libpython3.9.dylib 0x3bb6d71ac method_vectorcall + 216
12 libpython3.9.dylib 0x3bb7aac20 call_function + 416
13 libpython3.9.dylib 0x3bb7a82c0 _PyEval_EvalFrameDefault + 23108
14 libpython3.9.dylib 0x3bb7abb48 _PyEval_EvalCode + 2988
15 libpython3.9.dylib 0x3bb7a27b4 PyEval_EvalCode + 80
I managed to find a smaller reproducible crash case:
import open3d as o3d
import numpy as np
pts_arr = np.array([(0, 0, 0), (1, 1, 1)])
o3d.utility.Vector3dVector(pts_arr)
This is the call stack from crashing thread in the simple script above:
5 libsystem_platform.dylib 0x18fd8c624 _sigtramp + 56
6 pybind.cpython-39-darwin.so 0x3cd9731c8 0x3cc050000 + 26358216
7 pybind.cpython-39-darwin.so 0x3cd977134 0x3cc050000 + 26374452
8 pybind.cpython-39-darwin.so 0x3cdbc11c8 0x3cc050000 + 28774856
9 pybind.cpython-39-darwin.so 0x3cdbc0ebc 0x3cc050000 + 28774076
10 pybind.cpython-39-darwin.so 0x3cd7b656c 0x3cc050000 + 24536428
11 libpython3.9.dylib 0x3aadd73a0 cfunction_call + 84
12 libpython3.9.dylib 0x3aad94a8c _PyObject_MakeTpCall + 360
13 libpython3.9.dylib 0x3aad972a0 method_vectorcall + 460
14 libpython3.9.dylib 0x3aadf7904 slot_tp_init + 252
15 libpython3.9.dylib 0x3aadee970 type_call + 352
16 pybind.cpython-39-darwin.so 0x3cd79dc3c 0x3cc050000 + 24435772
17 libpython3.9.dylib 0x3aad94a8c _PyObject_MakeTpCall + 360
18 libpython3.9.dylib 0x3aae6ac80 call_function + 512
19 libpython3.9.dylib 0x3aae682c0 _PyEval_EvalFrameDefault + 23108
20 libpython3.9.dylib 0x3aae6bb48 _PyEval_EvalCode + 2988
21 libpython3.9.dylib 0x3aae627b4 PyEval_EvalCode + 80
It will not crash if I change the int
values in the point tuple to float
. That’s the only clue I have right now.
Both crashes are Segmentation Faults in .../open3d/cpu/pybind.cpython-39-darwin.so
What To Do
We need debug builds of open3d to detect what is going on when crashing. I think it is safe to get the developers involved and see if they can reproduce the crash and inspect in debugger. This also might be an issue with open3d v0.18.0
maybe. I see the newer 0.19.0
does not have arm64
for python 3.9
I will still keep searching to see if I can understand why this crash happens.
RH-87749 open3d script crashes Rhino
1 Like
@eirannejad
Okay, that sounds complete. Thanks for looking into it.
Best, Johan
1 Like
Also, as a lead. The code worked a couple of rhino SR versions ago.
eirannejad
(Ehsan Iran-Nejad)
June 5, 2025, 5:39pm
9
Was it the same open3d
version?
I’m not sure. I didn’t specify a version. It may have been reinstalled with the new Rhino service release.
1 Like