예제 #1
0
 public void OnBubbleAdd(DeckBubble deckBubble)
 {
     deckBubble.RenderId = h3d.addNodes(h3d.H3DRootNode, DeckProgram.DeckRenderer.BubbleResource);
     h3d.setNodeTransform(deckBubble.RenderId,
                          deckBubble.Center.X, deckBubble.Center.Y, deckBubble.Center.Z,
                          0, 0, 0,
                          deckBubble.Range, deckBubble.Range, deckBubble.Range); //horde3d 1.0
 }
예제 #2
0
        public void OnServerObjectHandover(HandoverEventMessage handoverEvent)
        {
            if (DeckProgram.DeckScene.ContainsObject(handoverEvent.ObjectFragment.ObjectId))
            {
                DeckProgram.DeckScene.DeactivateObject(handoverEvent.ObjectFragment.ObjectId);
            }
            DeckBubble targetBubble         = DeckProgram.DeckScene.GetBubble(handoverEvent.TargetBubbleId);
            string     targetBubbleLoginUrl = targetBubble.WebUrl + "GetLoginSecret.aspx?goto=mxp://" + targetBubble.Address + ":" + targetBubble.Port + "/" + targetBubble.BubbleId;

            DeckProgram.LoginForm.SetBubbleLoginAddress(targetBubbleLoginUrl);
            DeckProgram.CloudView.Disconnect();
            m_isHandoverConnect = true;
        }
예제 #3
0
        public void OnLinkedBubbleListReceived(ListBubblesResponse listBubblesResponse)
        {
            foreach (BubbleFragment bubbleFragment in listBubblesResponse.BubbleFragments)
            {
                LogUtil.Info("Received linked bubble: " + bubbleFragment.BubbleName + " X: " + bubbleFragment.BubbleCenter.X + ", Y: " + bubbleFragment.BubbleCenter.Y + ", Z: " + bubbleFragment.BubbleCenter.Z + " Range: " + bubbleFragment.BubbleRange);

                DeckBubble deckBubble = new DeckBubble
                {
                    BubbleId = bubbleFragment.BubbleId,
                    Name     = bubbleFragment.BubbleName,
                    Address  = bubbleFragment.BubbleAddress,
                    Port     = bubbleFragment.BubblePort - 1,
                    WebUrl   = bubbleFragment.BubbleAssetCacheUrl,
                    Range    = bubbleFragment.BubbleRange,
                    Center   = new MsdVector3f()
                };

                deckBubble.Center.X = bubbleFragment.BubbleCenter.X;
                deckBubble.Center.Y = bubbleFragment.BubbleCenter.Y;
                deckBubble.Center.Z = bubbleFragment.BubbleCenter.Z;

                DeckProgram.DeckScene.AddBubble(deckBubble);
            }
        }
예제 #4
0
 public void OnBubbleRemove(DeckBubble deckBubble)
 {
     h3d.removeNode(deckBubble.RenderId);
 }