public void Connect(VisBridge bridge, InfoObject infO, AGraphicalPrimitive prim, Color color)
        {
            if (paths.ContainsKey(infO))
            {
                return;
            }

            if (center == null)
            {
                center = Services.PrimFactory3D().CreatePhantomPrimitive();
            }

            var bridgeCenter = bridge.centroids[infO];

            var offset = Services.PrimFactory3D().CreateBoxPrimitive();

            offset.transform.parent     = center.transform;
            offset.transform.localScale = new Vector3(.05f, .005f, .05f);
            offset.SetColor(color, color);

            // Connect visBridgeCenter with treeCenter
            var trunk = Instantiate(branchPrefab);

            trunk.Init(bridgeCenter, offset, color, infO);

            var branch = Instantiate(branchPrefab);

            branch.Init(offset, prim, color, infO);

            paths.Add(infO, new BridgePath(infO, trunk, branch, offset));
            Observe(branch);

            UpdateCenter();
        }
 public void Assign(VisBridge visBridge, AETV ID)
 {
     root    = visBridge;
     this.ID = ID;
     Observe(ID);
 }