//============================================================ // <T>加载配置信息。</T> // // @param xconfig 配置信息 //============================================================ public void LoadOrignConfig(FXmlNode xconfig) { // 读取属性 _typeName = xconfig.Get("type"); if (xconfig.Contains("center_front")) { _centerFront = xconfig.GetFloat("center_front"); } if (xconfig.Contains("center_back")) { _centerBack = xconfig.GetFloat("center_back"); } // 读取节点集合 foreach (FXmlNode xnode in xconfig.Nodes) { // 读取位置 if (xnode.IsName("Position")) { _position.LoadConfig(xnode); } // 读取方向 if (xnode.IsName("Direction")) { _direction.LoadConfig(xnode); } // 读取焦平面 if (xnode.IsName("Focal")) { _focalNear = xnode.GetFloat("near", _focalNear); _focalFar = xnode.GetFloat("far", _focalFar); } // 读取视角 if (xnode.IsName("Viewport")) { _viewport.LoadOrignConfig(xnode); } } }
//============================================================ // <T>加载配置信息。</T> // // @param xconfig 配置信息 //============================================================ public void LoadConfig(FXmlNode xconfig) { // 读取属性 _typeName = xconfig.Get("type_name"); // 读取节点集合 foreach (FXmlNode xnode in xconfig.Nodes) { // 读取中心 if (xnode.IsName("Center")) { _centerFront = xnode.GetFloat("front"); _centerBack = xnode.GetFloat("back"); } // 读取位置 if (xnode.IsName("Position")) { _position.LoadConfig(xnode); } // 读取方向 if (xnode.IsName("Direction")) { _direction.LoadConfig(xnode); } // 读取目标 if (xnode.IsName("Target")) { SFloatPoint3 target = new SFloatPoint3(); target.LoadConfig(xnode); _direction.X = target.X - _position.X; _direction.Y = target.Y - _position.Y; _direction.Z = target.Z - _position.Z; _direction.Normalize(); } // 读取焦平面 if (xnode.IsName("Focal")) { _focalNear = xnode.GetFloat("near"); _focalFar = xnode.GetFloat("far"); } // 读取视角 if (xnode.IsName("Viewport")) { _viewport.LoadConfig(xnode); } } }
//============================================================ // <T>加载配置信息。</T> // // @param config 配置信息 //============================================================ public void LoadModelConfig(FXmlNode config) { _position.LoadConfig(config); }
//============================================================ // <T>加载配置信息。</T> // // @param config 配置信息 //============================================================ public void LoadConfig(FXmlNode config) { _translation.LoadConfig(config.Find("Translation")); _euler.LoadConfig(config.Find("Euler")); _scale.LoadConfig(config.Find("Scale")); }