Hello, I have this script. The problem is that when there are duplicate entities on my canvas, edges are constructed for only one of them.
|myView entity otherEntities | myView := ROMondrianViewBuilder new. entity := 1. otherEntities := #(2 2 3 3 4 4). myView shape rectangle withoutBorder. myView node: #entity forIt: [ myView nodes: otherEntities forEach: [:each | myView shape label. myView node: each name]. ]. myView shape rectangle withoutBorder. myView node: #otherEntities forIt: [ myView shape rectangle. myView node: entity ]. myView shape line color: Color red; width: 1. myView edges: otherEntities from: #yourself to: entity. myView verticalLineLayout center. myView open. [image: Inline image 2] The edges to all the entities can be drawn using this script which is a bit inelegant.
((myView raw elementsSuchThat: [:each | each model name includesSubString: 'other']) first elements) do: [:each | myView raw add: (myView buildEdgeFrom: each to: (myView lookup: entity))].
[image: Inline image 3]
Question: how to deal with duplicate entities in Roassal? May be this occurs seldom in reality?
regards, Usman