mayaMatchMoveSolver
mayaMatchMoveSolver copied to clipboard
Surface Cluster - Create from Selected Face Errors
Problem
Creating a Surface Cluster with a single selected face fails.
Expected behavior: A Surface Cluster should be created, centring on the selected face.
Actual behavior:
# Error:
# # Traceback (most recent call last):
# # File "<maya console>", line 2, in <module>
# # File "C:\Users\username\Documents\maya\2023\modules\mayaMatchMoveSolver-0.4.9-maya2023-win64\python\mmSolver\tools\surfacecluster\tool.py", line 257, in main
# # surface_cluster = create_single_surface_cluster()
# # File "C:\Users\username\Documents\maya\2023\modules\mayaMatchMoveSolver-0.4.9-maya2023-win64\python\mmSolver\tools\surfacecluster\tool.py", line 76, in create_single_surface_cluster
# # surface_cluster = lib.create_surface_cluster_on_component(component)
# # File "C:\Users\username\Documents\maya\2023\modules\mayaMatchMoveSolver-0.4.9-maya2023-win64\python\mmSolver\tools\surfacecluster\lib.py", line 502, in create_surface_cluster_on_component
# # point_data = nearestpointonmesh.get_nearest_point_on_mesh(mesh_shp, in_position)
# # File "C:\Users\username\Documents\maya\2023\modules\mayaMatchMoveSolver-0.4.9-maya2023-win64\python\mmSolver\utils\rivet\nearestpointonmesh.py", line 46, in get_nearest_point_on_mesh
# # assert isinstance(in_position, (tuple, list)) and len(in_position) == 3
# # AssertionError
Steps to Reproduce
- Load Character Rig.
- Select face on the character rig mesh.
- Run menu "mmSolver > General Tools > Create Surface Cluster".
Software Versions
- mmSolver version: v0.4.9
- Maya version: 2023 (others are probably affected).
- Operating System (OS): Windows (but both are likely affected)
The same issue happens when a selected edge is selected.
# Error:
# # Traceback (most recent call last):
# # File "<maya console>", line 2, in <module>
# # File "C:\Users\username\Documents\maya\2023\modules\mayaMatchMoveSolver-0.4.9-maya2023-win64\python\mmSolver\tools\surfacecluster\tool.py", line 257, in main
# # surface_cluster = create_single_surface_cluster()
# # File "C:\Users\username\Documents\maya\2023\modules\mayaMatchMoveSolver-0.4.9-maya2023-win64\python\mmSolver\tools\surfacecluster\tool.py", line 76, in create_single_surface_cluster
# # surface_cluster = lib.create_surface_cluster_on_component(component)
# # File "C:\Users\username\Documents\maya\2023\modules\mayaMatchMoveSolver-0.4.9-maya2023-win64\python\mmSolver\tools\surfacecluster\lib.py", line 502, in create_surface_cluster_on_component
# # point_data = nearestpointonmesh.get_nearest_point_on_mesh(mesh_shp, in_position)
# # File "C:\Users\username\Documents\maya\2023\modules\mayaMatchMoveSolver-0.4.9-maya2023-win64\python\mmSolver\utils\rivet\nearestpointonmesh.py", line 46, in get_nearest_point_on_mesh
# # assert isinstance(in_position, (tuple, list)) and len(in_position) == 3
# # AssertionError