예제 #1
0
 //============================================================
 // <T>加载配置信息。</T>
 //
 // @param xconfig 配置信息
 //============================================================
 public void LoadOrignConfig(FXmlNode xconfig)
 {
     _nodes.Clear();
     _displays.Clear();
     // 读取所有信息
     foreach (FXmlNode xnode in xconfig.Nodes)
     {
         if (xnode.IsName("Node"))
         {
             FDrSceneNode sceneNode = new FDrSceneNode();
             sceneNode.Parent = this;
             sceneNode.Scene  = _scene;
             sceneNode.LoadOrignConfig(xnode);
             _nodes.Push(sceneNode);
         }
     }
     // 获得所有显示对象
     foreach (FDrSceneNode node in _nodes)
     {
         node.FilterDisplays(_displays);
     }
     foreach (FDrSceneDisplay display in _displays)
     {
         display.UpdateMatrix();
     }
 }
예제 #2
0
 //============================================================
 // <T>加载配置信息。</T>
 //
 // @param xconfig 配置信息
 //============================================================
 public void LoadConfig(FXmlNode xconfig)
 {
     _nodes.Clear();
     _displays.Clear();
     // 读取所有信息
     foreach (FXmlNode xnode in xconfig.Nodes)
     {
         // 创建节点对象
         if (xnode.IsName("Node"))
         {
             FDrSceneNode nodeNode = new FDrSceneNode();
             nodeNode.Parent = this;
             nodeNode.Scene  = _scene;
             nodeNode.LoadConfig(xnode);
             _displays.Append(nodeNode.Displays);
             _nodes.Push(nodeNode);
         }
         // 创建显示对象
         if (xnode.IsName("Display"))
         {
             FDrSceneDisplay display = new FDrSceneDisplay();
             display.Parent = this;
             display.Scene  = _scene;
             display.LoadConfig(xnode);
             _displays.Push(display);
         }
     }
     // 获得所有显示对象
     foreach (FDrSceneNode node in _nodes)
     {
         node.FilterDisplays(_displays);
     }
     foreach (FDrSceneDisplay display in _displays)
     {
         display.UpdateMatrix();
     }
 }