{"action":"closed","issue":{"url":"https://api.github.com/repos/GafferHQ/gaffer/issues/2647","repository_url":"https://api.github.com/repos/GafferHQ/gaffer","labels_url":"https://api.github.com/repos/GafferHQ/gaffer/issues/2647/labels{/name}","comments_url":"https://api.github.com/repos/GafferHQ/gaffer/issues/2647/comments","events_url":"https://api.github.com/repos/GafferHQ/gaffer/issues/2647/events","html_url":"https://github.com/GafferHQ/gaffer/issues/2647","id":338394581,"node_id":"MDU6SXNzdWUzMzgzOTQ1ODE=","number":2647,"title":"Expression node : Connection arrow doesn't render when partner node has same x or y coord","user":{"login":"medubelko","id":26754296,"node_id":"MDQ6VXNlcjI2NzU0Mjk2","avatar_url":"https://avatars1.githubusercontent.com/u/26754296?v=4","gravatar_id":"","url":"https://api.github.com/users/medubelko","html_url":"https://github.com/medubelko","followers_url":"https://api.github.com/users/medubelko/followers","following_url":"https://api.github.com/users/medubelko/following{/other_user}","gists_url":"https://api.github.com/users/medubelko/gists{/gist_id}","starred_url":"https://api.github.com/users/medubelko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/medubelko/subscriptions","organizations_url":"https://api.github.com/users/medubelko/orgs","repos_url":"https://api.github.com/users/medubelko/repos","events_url":"https://api.github.com/users/medubelko/events{/privacy}","received_events_url":"https://api.github.com/users/medubelko/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-07-05T00:29:16Z","updated_at":"2018-07-06T16:22:58Z","closed_at":"2018-07-06T16:22:58Z","author_association":"CONTRIBUTOR","body":"**Version:** 0.47.0.0-linux\r\n**Third-party tools:** None\r\n\r\n### Description\r\nMinor bug: when an expression node and the node it references have the same x or y coordinate, the arrow on the connection doesn't render.\r\n\r\n###  Steps to Reproduce\r\n1. Execute this code in the _Script Editor_:\r\n    ```python\r\n    import Gaffer\r\n    import GafferScene\r\n    import IECore\r\n    import imath\r\n\r\n    __children = {}\r\n\r\n    __children[\"Expression\"] = Gaffer.Expression( \"Expression\" )\r\n    parent.addChild( __children[\"Expression\"] )\r\n    __children[\"Expression\"][\"__in\"].addChild( Gaffer.FloatPlug( \"p0\", defaultValue = 1.0, minValue = 0.0, flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )\r\n    __children[\"Expression\"].addChild( Gaffer.V2fPlug( \"__uiPosition\", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )\r\n    __children[\"Sphere\"] = GafferScene.Sphere( \"Sphere\" )\r\n    parent.addChild( __children[\"Sphere\"] )\r\n    __children[\"Sphere\"].addChild( Gaffer.V2fPlug( \"__uiPosition\", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )\r\n    __children[\"Expression\"][\"__in\"][\"p0\"].setInput( __children[\"Sphere\"][\"radius\"] )\r\n    __children[\"Sphere\"][\"__uiPosition\"].setValue( imath.V2f( 15, 0 ) )\r\n    __children[\"Expression\"].setExpression( \"parent['Sphere']['radius']\", \"python\" )\r\n\r\n    del __children\r\n    ```\r\n    The arrow doesn't render.\r\n\r\n2. Then, execute this code:\r\n    ```python\r\n    uiPos = script[\"Sphere\"][\"__uiPosition\"].getValue()\r\n    script[\"Sphere\"][\"__uiPosition\"].setValue( uiPos + imath.V2f( 0, 0.001 ) )\r\n    ```\r\n    The arrow renders."}}
{"actor":{"display_login":"andrewkaufman"}}