i am working on a script to add a diagram to an element and show its subelements there. So far I found out that i have to create the digram in the main model, then change the "diagram" and "canvasElement" properties to the element. This seems to work but, the created diagram only becomes visible if i add another element to "New Element" afterwards like a port, function etc. Seems like the modeltree is not refreshing / synchronizing. Is there any trick ?
This is the model I use as reference for this test.

//$DEBUG$ $EXPERIMENTAL$ $WARNING_AS_ERROR$ $ENHANCED_CONTAINMENT_ACCESS$ $ENHANCED_JAVA_ACCESS$
load(".lib/factory.js");
load(".lib/trashbin.js");
load(".lib/ui.js");
function MyDiag()
{
//var targetModel = finder.findByType(Metamodel.projectmodel.PJPackage, false).and("name", "System Design").asList().get(0);
var MyModel = "New Model";
var theModel = finder.findByType(Metamodel.sysml.SysMLContainerPackage, false).and("name", MyModel).asList().get(0);
var myFinder = Global.getFinder(theModel);
var components = myFinder.findByType(Metamodel.sysml.SysMLPart, false).and("name", "New Element").asList();
var myElement = components.get(0);
var myNewDiagram = Factory.createElement(theModel, Metamodel.projectmodel.PJDiagram);
myNewDiagram.name = myElement.name;
myNewDiagram.diagram.element = myElement;
myNewDiagram.canvasElement = myElement;
dropObjectsToDiagram(myElement.the_owned_elements, null, myNewDiagram, 500, 150, 2 /* = MOVE */);
}
MyDiag();