Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error when changing muscle color #1494

Closed
mrrezaie opened this issue Mar 10, 2024 · 2 comments
Closed

Error when changing muscle color #1494

mrrezaie opened this issue Mar 10, 2024 · 2 comments

Comments

@mrrezaie
Copy link

Steps to reproduce

  1. open a model with muscle(s) (e.g. Rajagopal)
  2. select muscle(s) from navigator (Forces>Muscles>all)
  3. right click on the selected muscle(s) and select Display>Color...
  4. pick a color and hit OK

Expected result

The color of the selected muscle(s) should change.

Actual result

Raises exception(s):

java.lang.RuntimeException: Property 'GeometryPath' not present in Object addbrev_r
	at org.opensim.modeling.opensimCommonJNI.OpenSimObject_getPropertyByName(Native Method)
	at org.opensim.modeling.OpenSimObject.getPropertyByName(OpenSimObject.java:328)
	at org.opensim.threejs.ModelVisualizationJson.propagateGeometryPathCommandsToPathPoints(ModelVisualizationJson.java:1410)
	at org.opensim.view.pub.ViewDB.applyPendingAppearanceChanges(ViewDB.java:219)
...
java.lang.NullPointerException
	at org.opensim.view.pub.ViewDB.applyPendingAppearanceChanges(ViewDB.java:214)
	at org.opensim.view.pub.ViewDB.setApplyAppearanceChange(ViewDB.java:199)
	at org.opensim.view.ObjectDisplayColorAction.performAction(ObjectDisplayColorAction.java:53)
	at org.openide.util.actions.CallableSystemAction$1.run(CallableSystemAction.java:105)
	at org.openide.util.actions.ActionInvoker$1.run(ActionInvoker.java:70)
	at org.openide.util.actions.ActionInvoker.doPerformAction(ActionInvoker.java:91)
	at org.openide.util.actions.ActionInvoker.invokeAction(ActionInvoker.java:74)
	at org.openide.util.actions.CallableSystemAction.actionPerformed(CallableSystemAction.java:102)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:882)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:926)
	at java.awt.Component.processMouseEvent(Component.java:6539)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6304)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
	at java.awt.Container.dispatchEventImpl(Container.java:2283)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)
[catch] at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Environment and GUI version

Windows 10, Opensim 4.5

@aymanhab
Copy link
Member

Thanks for reporting @mrrezaie the issue has been verified and a fix is on the way
#1495
Please test the artifact when ci is finished building. Thank you

@mrrezaie
Copy link
Author

Hi @aymanhab, it is working very well. Thanks a lot for the fix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants