Quantcast
Channel: Northwoods Software - Latest topics
Viewing all articles
Browse latest Browse all 7403

Dynamically created nodes are overlapping

$
0
0

@swati.707 wrote:

Hi ,
I am creating nodes dynamically on click event but the newly added nodes are overlapping with the parent node
Please help
function addChild(nodename,event) {
vm.i = vm.i+1;

    var can = event.target;
    var pixelratio = window.PIXELRATIO;
    var bbox = can.getBoundingClientRect();
    var bbw = bbox.width;
    if (bbw === 0) bbw = 0.001;
    var bbh = bbox.height;
    if (bbh === 0) bbh = 0.001;
    var mx = event.clientX - bbox.left * ((400/pixelratio) / bbw);
    var my = event.clientY - bbox.top * ((400/pixelratio) / bbh);
    var point = vm.myDiagram.transformViewToDoc(new go.Point(mx, my));


 vm.myDiagram.startTransaction("add node and link");
 //var newnode = { key: nodename };
 vm.myDiagram.model.addNodeData({ key: vm.myDiagram.model.nodeDataArray[0].key+vm.i , name:nodename , color: "#F0F0F0" , location: point});  // this makes sure the key is unique
 var newlink = { from: vm.myDiagram.model.nodeDataArray[0].key, to: vm.myDiagram.model.nodeDataArray[0].key+vm.i };

vm.myDiagram.model.addLinkData(newlink);
vm.myDiagram.commitTransaction("add node and link");

};

vm.myfun = function () {
var $ = go.GraphObject.make; // We use $ for conciseness, but you can use anything, $, GO, MAKE, etc
var myDiagram = $(go.Diagram, "myDiagramDiv", // create a Diagram for the DIV HTML element
{
initialContentAlignment: go.Spot.Center,
"undoManager.isEnabled": true
});

     myDiagram.nodeTemplate =
     $(go.Node, "Auto",
                            new go.Binding("location", "loc", go.Point.parse).makeTwoWay(go.Point.stringify),
                            $(go.Shape, "Rectangle", new go.Binding("fill", "color"),
                              {
                                portId: "", cursor: "pointer", strokeWidth: 0,
                                fromLinkable: true, toLinkable: true,
                                fromLinkableSelfNode: true, toLinkableSelfNode: true,
                                fromLinkableDuplicates: true, toLinkableDuplicates: true
                              }),
                            $(go.TextBlock, { margin: 8, editable: true },
                              new go.Binding("text", "name").makeTwoWay())
  );

myDiagram.linkTemplate =
$(go.Link,
                            new go.Binding("routing", "routing"),
                            { relinkableFrom: true, relinkableTo: true },
                            //$(go.Shape),
                            $(go.Shape, { toArrow: "", stroke: null, strokeWidth: 0 })

);

var nodeDataArray = [
{ key: 1, name: "RN1", color: "#F0F0F0" },

];
var linkDataArray = [

];

myDiagram.model = new go.GraphLinksModel(nodeDataArray,linkDataArray);

vm. myDiagram = myDiagram;
window.PIXELRATIO = myDiagram.computePixelRatio();

}

}

Posts: 4

Participants: 2

Read full topic


Viewing all articles
Browse latest Browse all 7403

Trending Articles