当前位置: 首页>>代码示例>>C#>>正文


C# AnimatTools.AddChildElement方法代码示例

本文整理汇总了C#中AnimatTools.AddChildElement方法的典型用法代码示例。如果您正苦于以下问题:C# AnimatTools.AddChildElement方法的具体用法?C# AnimatTools.AddChildElement怎么用?C# AnimatTools.AddChildElement使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在AnimatTools的用法示例。


在下文中一共展示了AnimatTools.AddChildElement方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: SaveData

        public override void SaveData(ref AnimatTools.DataObjects.Simulation dsSim, ref AnimatTools.DataObjects.Physical.PhysicalStructure doStructure, ref AnimatTools.Interfaces.StdXml oXml)
        {
            base.SaveData (ref dsSim, ref doStructure, ref oXml);

            oXml.IntoElem();

            oXml.AddChildElement("LowerRadius", m_fLowerRadius);
            oXml.AddChildElement("UpperRadius", m_fUpperRadius);
            oXml.AddChildElement("Height", m_fHeight);
            oXml.AddChildElement("CollisionLowerRadius", m_fLowerRadius);
            oXml.AddChildElement("CollisionUpperRadius", m_fUpperRadius);
            oXml.AddChildElement("CollisionHeight", m_fHeight);

            oXml.OutOfElem(); //out of body
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:15,代码来源:Cone.cs

示例2: SaveData

        public override void SaveData(ref AnimatTools.DataObjects.Simulation dsSim, ref AnimatTools.DataObjects.Physical.PhysicalStructure doStructure, ref AnimatTools.Interfaces.StdXml oXml)
        {
            base.SaveData (ref dsSim, ref doStructure, ref oXml);
            Vector3 v3Rot = Util_DX.DecomposeXYZRotationMatrix(this.CombinedTransformationMatrix);

            Vector3 rot = m_v3Rotation;
            rot.Normalize();
            AnimatTools.Framework.Vec3d v = new Vec3d(null, rot.X, rot.Y, rot.Z);

            oXml.IntoElem();
                //oXml.AddChildElement("Stiffness", this.Stiffness.ActualValue);
                //oXml.AddChildElement("Damping", this.Damping.ActualValue);
                oXml.AddChildElement("ConstraintHalfAngle",m_fHalfAngle);

                m_v3Axis.TransformCoordinate(Matrix.RotationX(Geometry.DegreeToRadian(180)) * Matrix.RotationY(Geometry.DegreeToRadian(180)) * Matrix.RotationZ(Geometry.DegreeToRadian(180)) * Matrix.RotationX(v3Rot.X)* Matrix.RotationY(v3Rot.Y) * Matrix.RotationZ(v3Rot.Z));

                Vec3d vRotationAxis = new Vec3d(null,m_v3Axis.X, m_v3Axis.Y, m_v3Axis.Z);
                Util.SaveVector(ref oXml, "ConstraintAxis", vRotationAxis);
            oXml.OutOfElem();

            m_v3Axis = new Vector3(0,0,1);
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:22,代码来源:BallSocket.cs

示例3: SaveData

        public override void SaveData(ref AnimatTools.DataObjects.Simulation dsSim, ref AnimatTools.DataObjects.Physical.PhysicalStructure doStructure, ref AnimatTools.Interfaces.StdXml oXml)
        {
            oXml.AddChildElement(this.BodyPartType);

            oXml.IntoElem(); //Into RigidBody Element

            oXml.AddChildElement("Name", m_strName);
            oXml.AddChildElement("ID", m_strID);
            oXml.AddChildElement("Type", this.Type);
            oXml.AddChildElement("PartType", this.PartType.ToString());
            oXml.AddChildElement("ModuleName", this.ModuleName);

            Util.SaveColor(ref oXml, "Color", m_d3dMaterial.Diffuse);

            if(m_thPrimaryAttachment != null && m_thPrimaryAttachment.BodyPart != null)
                oXml.AddChildElement("PrimaryAttachmentID", m_thPrimaryAttachment.BodyPart.ID);

            if(m_thSecondaryAttachment != null && m_thSecondaryAttachment.BodyPart != null)
                oXml.AddChildElement("SecondaryAttachmentID", m_thSecondaryAttachment.BodyPart.ID);

            m_snNaturalLength.SaveData(ref oXml, "NaturalLength");
            m_snStiffness.SaveData(ref oXml, "Stiffness");
            m_snDamping.SaveData(ref oXml, "Damping");

            oXml.AddChildElement("Enabled", m_bEnabled);
            oXml.AddChildElement("IsVisible", m_bVisible);

            oXml.OutOfElem(); //Outof RigidBody Element
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:29,代码来源:Spring.cs

示例4: SaveData

        public override void SaveData(ref AnimatTools.DataObjects.Simulation dsSim, ref AnimatTools.DataObjects.Physical.PhysicalStructure doStructure, ref AnimatTools.Interfaces.StdXml oXml)
        {
            base.SaveData (ref dsSim, ref doStructure, ref oXml);

            oXml.IntoElem();

            if(!oXml.FindChildElement("Constraint", false))
                oXml.AddChildElement("Constraint");
            oXml.IntoElem();
            oXml.SetAttrib("Low",this.m_fltMinMovement);
            oXml.SetAttrib("High", this.m_fltMaxMovement);
            oXml.OutOfElem();

            oXml.AddChildElement("Length", m_fltLength);
            oXml.AddChildElement("EnableMotor",this.m_bEnableMotor);
            oXml.AddChildElement("ServoMotor",this.m_bServoMotor);
            oXml.AddChildElement("ServoGain",this.m_fltServoGain);
            m_snMaxForce.SaveData(ref oXml, "MaxForce");
            m_snMaxVelocity.SaveData(ref oXml, "MaxVelocity");

            RigidBodies.RigidBody_DX rbParent = (RigidBodies.RigidBody_DX)this.Parent;
            Vector3 v3Rot = Util_DX.DecomposeXYZRotationMatrix(this.CombinedTransformationMatrix);;
            float x = Geometry.DegreeToRadian(180);
            m_v3Axis.TransformCoordinate(Matrix.RotationX(Geometry.DegreeToRadian(180)) * Matrix.RotationY(Geometry.DegreeToRadian(180)) * Matrix.RotationZ(Geometry.DegreeToRadian(180)) * Matrix.RotationX(v3Rot.X)* Matrix.RotationY(v3Rot.Y) * Matrix.RotationZ(v3Rot.Z));
            Vec3d vRotationAxis = new Vec3d(null,m_v3Axis.X, m_v3Axis.Y, m_v3Axis.Z);
            Util.SaveVector(ref oXml, "RotationAxis", vRotationAxis);
            m_v3Axis = new Vector3(0,0,1);

            oXml.OutOfElem();
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:30,代码来源:Prismatic.cs

示例5: SaveMatrix

        public static void SaveMatrix(ref AnimatTools.Interfaces.StdXml oXml, string strName,  Matrix mtxM)
        {
            string str = mtxM.M11.ToString() +"," + mtxM.M12.ToString() +"," + mtxM.M13.ToString() +"," + mtxM.M14.ToString() +",";
            str += mtxM.M21.ToString() +"," + mtxM.M22.ToString() +"," + mtxM.M23.ToString() +"," + mtxM.M24.ToString() +",";
            str += mtxM.M31.ToString() +"," + mtxM.M32.ToString() +"," + mtxM.M33.ToString() +"," + mtxM.M34.ToString() +",";
            str += mtxM.M41.ToString() +"," + mtxM.M42.ToString() +"," + mtxM.M43.ToString() +"," + mtxM.M44.ToString();

            oXml.AddChildElement(strName,str);
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:9,代码来源:Util_DX.cs

示例6: LoadData

        public override void LoadData(ref AnimatTools.DataObjects.Simulation dsSim, ref AnimatTools.DataObjects.Physical.PhysicalStructure doStructure, ref AnimatTools.Interfaces.StdXml oXml)
        {
            m_aryChildBodies.Clear();

            oXml.IntoElem(); //'Into RigidBody Element

            m_strID = oXml.GetChildString("ID");
            m_strName = oXml.GetChildString("Name", m_strID);
            m_strDescription = oXml.GetChildString("Description", "");

            if(m_strName.Trim().Length == 0)
                m_strName = m_strID;

            if(oXml.FindChildElement("Color", false))
            {
                System.Drawing.Color oColor = Util.LoadColor(ref oXml, "Color");
                this.Alpha = oColor.A;
                this.Color = oColor;
            }

            if(oXml.FindChildElement("MuscleAttachments", false))
            {
                oXml.IntoElem();

                oXml.AddChildElement("Description", m_strDescription);

                if(oXml.NumberOfChildren() > 2)
                    throw new System.Exception("The standard spring can not have more than 2 attachment points.");
                else if(oXml.NumberOfChildren() == 2)
                {
                    oXml.FindChildByIndex(0);
                    m_strPrimaryAttachID = oXml.GetChildString();
                    oXml.FindChildByIndex(1);
                    m_strSecondaryAttachID = oXml.GetChildString();
                }
                else if(oXml.NumberOfChildren() == 1)
                {
                    oXml.FindChildByIndex(0);
                    m_strPrimaryAttachID = oXml.GetChildString();
                }
                else
                {
                    m_strPrimaryAttachID = "";
                    m_strSecondaryAttachID = "";
                }

                oXml.OutOfElem();
            }
            else
            {
                if(oXml.FindChildElement("PrimaryAttachmentID", false))
                    m_strPrimaryAttachID = oXml.GetChildString("PrimaryAttachmentID");

                if(oXml.FindChildElement("SecondaryAttachmentID", false))
                    m_strSecondaryAttachID = oXml.GetChildString("SecondaryAttachmentID");
            }

            m_snNaturalLength.LoadData(ref oXml, "NaturalLength");
            m_snStiffness.LoadData(ref oXml, "Stiffness");
            m_snDamping.LoadData(ref oXml, "Damping");

            m_bEnabled = oXml.GetChildBool("Enabled", m_bEnabled);
            m_bVisible = oXml.GetChildBool("IsVisible", m_bVisible);

            oXml.OutOfElem(); //Outof RigidBody Element
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:66,代码来源:Spring.cs

示例7: SaveData

        public override void SaveData(ref AnimatTools.DataObjects.Simulation dsSim, ref AnimatTools.DataObjects.Physical.PhysicalStructure doStructure, ref AnimatTools.Interfaces.StdXml oXml)
        {
            base.SaveData(ref dsSim, ref doStructure, ref oXml);

            oXml.IntoElem(); //'Into RigidBody Element

            oXml.AddChildElement("ApplyTension", m_bApplyTension);
            m_snIaDischargeConstant.SaveData(ref oXml, "IaDischarge");
            m_snIIDischargeConstant.SaveData(ref oXml, "IIDischarge");

            oXml.OutOfElem(); //Outof RigidBody Element
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:12,代码来源:LinearHillStretchReceptor.cs

示例8: SaveXml

        public override void SaveXml(ref AnimatTools.Interfaces.StdXml oXml)
        {
            if(m_doOrganism == null)
                throw new System.Exception("No organism was defined for the stimulus '" + m_strName + "'.");

            if(m_doNode == null)
                throw new System.Exception("No node was defined for the stimulus '" + m_strName + "'.");

            //I have no idea why, but unders some conditions the object link we have to the node does not point to the
            //actual node. We need to re-get the link to make sure that the node index is actually valid.
            m_doNode = m_doOrganism.FindBehavioralNode(m_doNode.ID, true);

            if(m_doNode != null && m_thMuscle != null && m_thMuscle.BodyPart != null && m_strMuscleLengthData != null && m_strMuscleLengthData.Length > 0)
            {
                oXml.AddChildElement("Stimulus");

                oXml.IntoElem();
                oXml.AddChildElement("ID", m_strID);
                oXml.AddChildElement("Name", m_strName);

                //The module name needs to be blank so it is created from the physics class factory.
                //But we still need to know which neural module to load the neuron from.
                oXml.AddChildElement("ModuleName", this.StimulusModuleName);
                oXml.AddChildElement("NeuralModuleName", m_doNode.DataColumnModuleName);
                oXml.AddChildElement("Type", this.StimulusClassType);

                oXml.AddChildElement("OrganismID", m_doOrganism.ID);
                oXml.AddChildElement("TargetNodeID", m_doNode.NodeIndex);

                oXml.AddChildElement("MuscleID", m_thMuscle.BodyPart.ID);
                oXml.AddChildElement("LengthData", m_strMuscleLengthData);
                oXml.AddChildElement("Conductance", m_snConductance.ActualValue);
                oXml.AddChildElement("RestPotential", m_snRestPotential.ActualValue);

                oXml.OutOfElem();
            }
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:37,代码来源:InverseMuscleDynamics.cs

示例9: SaveData

        public override void SaveData(ref AnimatTools.DataObjects.Simulation dsSim, ref AnimatTools.DataObjects.Physical.PhysicalStructure doStructure, ref AnimatTools.Interfaces.StdXml oXml)
        {
            base.SaveData (ref dsSim, ref doStructure, ref oXml);

            oXml.IntoElem();
            oXml.AddChildElement("Height", m_fltHeight);
            oXml.AddChildElement("HeightFieldImage", m_strHeightFieldImage);
            Util.SaveVector(ref oXml, "MapLocation", m_vMapLocation);
            Util.SaveVector(ref oXml, "MapSize", m_vMapSize);
            oXml.AddChildElement("MapScale", m_fltMapScale);
            oXml.OutOfElem(); //out of body
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:12,代码来源:Plane.cs

示例10: SaveData

        public override void SaveData(ref AnimatTools.Interfaces.StdXml oXml)
        {
            Vector3 v3Rot = Util_DX.DecomposeXYZRotationMatrix(m_mtxOrientation);
            m_fltRotateX = v3Rot.X;
            m_fltRotateY = v3Rot.Y;
            m_fltRotateZ = v3Rot.Z;

            oXml.AddChildElement("PanX", m_fltPanX);
            oXml.AddChildElement("PanY", m_fltPanY);
            oXml.AddChildElement("Zoom", m_fltZoom);
            oXml.AddChildElement("RotateX", m_fltRotateX);
            oXml.AddChildElement("RotateY", m_fltRotateY);
            oXml.AddChildElement("RotateZ", m_fltRotateZ);
            Util.SaveColor(ref oXml, "BackColor", m_clBackColor);
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:15,代码来源:BodyViewD3D.cs

示例11: SaveData

        public override void SaveData(ref AnimatTools.DataObjects.Simulation dsSim, ref AnimatTools.DataObjects.Physical.PhysicalStructure doStructure, ref AnimatTools.Interfaces.StdXml oXml)
        {
            base.SaveData(ref dsSim, ref doStructure, ref oXml);

            oXml.IntoElem(); //Into RigidBody Element

            m_snNaturalLength.SaveData(ref oXml, "NaturalLength");
            m_snStiffness.SaveData(ref oXml, "Stiffness");
            m_snDamping.SaveData(ref oXml, "Damping");
            oXml.AddChildElement("ForceType", m_eForceType.ToString());

            oXml.OutOfElem(); //Outof RigidBody Element
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:13,代码来源:MultisegmentSpring.cs

示例12: SaveData

        public override void SaveData(ref AnimatTools.DataObjects.Simulation dsSim, ref AnimatTools.DataObjects.Physical.PhysicalStructure doStructure, ref AnimatTools.Interfaces.StdXml oXml)
        {
            base.SaveData (ref dsSim, ref doStructure, ref oXml);

            oXml.IntoElem();

            if(m_thOdorType != null && m_thOdorType.OdorType != null)
                oXml.AddChildElement("OdorTypeID", m_thOdorType.OdorType.ID);

            oXml.OutOfElem(); //out of body
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:11,代码来源:OdorSensor.cs

示例13: SaveMeshVertices

        public static void SaveMeshVertices(ref AnimatTools.Interfaces.StdXml oXml, string strName, Mesh myMesh, bool bSaveIndices)
        {
            CustomVertex.PositionNormalTextured[] cvVerts = new CustomVertex.PositionNormalTextured[myMesh.NumberVertices];

            oXml.AddChildElement(strName);
            oXml.IntoElem();  //Into the mesh

            GraphicsStream buffer = myMesh.LockVertexBuffer(LockFlags.ReadOnly);
            AnimatTools.Framework.Vec3d vVertex = new AnimatTools.Framework.Vec3d(null);

            for(int i=0; i<myMesh.NumberVertices; i++)
            {
                buffer.Position = i * myMesh.NumberBytesPerVertex;
                cvVerts[i] = (CustomVertex.PositionNormalTextured)buffer.Read(typeof(CustomVertex.PositionNormalTextured));
                //System.Diagnostics.Debug.WriteLine("v " + cvVerts[i].X + " " + cvVerts[i].Y + " " + cvVerts[i].Z);

                vVertex.X = cvVerts[i].X;// - this.AbsoluteLocation.X;
                vVertex.Y = cvVerts[i].Y;// - this.AbsoluteLocation.Y;
                vVertex.Z = cvVerts[i].Z;// - this.AbsoluteLocation.Z;

                Util.SaveVector(ref oXml, "Vector", vVertex);

                //Debug.WriteLine("data.Write(new CustomVertex.PositionTextured(" + vVertex.X + "f, " + vVertex.Y + "f, " + vVertex.Z + "f, 0f, 0f));");
                //if(i%3 == 0) Debug.WriteLine("");
                //Debug.WriteLine("V: " + i + "  (" + cvVerts[i].X + ", " + cvVerts[i].Y + ", " + cvVerts[i].Z + ", " + cvVerts[i].Nx + ", " + cvVerts[i].Ny + ", " + cvVerts[i].Nz + ")");
            }
            myMesh.UnlockVertexBuffer();

            if(bSaveIndices)
            {
                using (IndexBuffer ib = myMesh.IndexBuffer)
                {
                    GraphicsStream gs = ib.Lock(0, myMesh.NumberFaces*3*2, LockFlags.ReadOnly);

                    string strIndex = "";
                    short iIndex;
                    for(int i=0; i<myMesh.NumberFaces*3; i++)
                    {
                        gs.Position = i * 2;
                        iIndex = (short) gs.Read(typeof(short));

                        strIndex += iIndex.ToString();
                        if(i<gs.Length-1) strIndex += ",";
                    }

                    oXml.AddChildElement("IndexBuffer", strIndex);

                    ib.Unlock();
                }
            }

            oXml.OutOfElem();  //Out of the mesh
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:53,代码来源:Util_DX.cs

示例14: SaveData

        public override void SaveData(ref AnimatTools.Interfaces.StdXml oXml)
        {
            base.SaveData(ref oXml);

            oXml.IntoElem();

            if(m_thMuscle != null && m_thMuscle.BodyPart != null)
                oXml.AddChildElement("MuscleID", m_thMuscle.BodyPart.ID);

            oXml.AddChildElement("MuscleLengthData", m_strMuscleLengthData);
            m_snConductance.SaveData(ref oXml, "Conductance");
            m_snRestPotential.SaveData(ref oXml, "RestPotential");

            oXml.OutOfElem();
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:15,代码来源:InverseMuscleDynamics.cs

示例15: SaveData

        public override void SaveData(ref AnimatTools.Interfaces.StdXml oXml)
        {
            base.SaveData(ref oXml);

            oXml.IntoElem();

            if(m_thPrimaryAttachment != null && m_thPrimaryAttachment.BodyPart != null)
                oXml.AddChildElement("PrimaryAttachmentID", m_thPrimaryAttachment.BodyPart.ID);

            if(m_thSecondaryAttachment != null && m_thSecondaryAttachment.BodyPart != null)
                oXml.AddChildElement("SecondaryAttachmentID", m_thSecondaryAttachment.BodyPart.ID);

            oXml.AddChildElement("PGain", m_fltProportionalGain);
            oXml.AddChildElement("DGain", m_fltDerivativeGain);
            oXml.AddChildElement("IGain", m_fltIntegratorGain);
            oXml.AddChildElement("MaxIValue", m_fltMaxIntegratorValue);
            m_snVelocity.SaveData(ref oXml, "Velocity");
            m_snMaxForce.SaveData(ref oXml, "MaxForce");

            oXml.OutOfElem();
        }
开发者ID:NeuroRoboticTech,项目名称:AnimatLabVersion1,代码行数:21,代码来源:VelocityClamp.cs


注:本文中的AnimatTools.AddChildElement方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。