/// <summary> /// Creates the parameter detail. /// </summary> /// <param name="type">The type.</param> /// <param name="idPrefix">The identifier prefix.</param> /// <param name="Name">The name.</param> /// <param name="units">The units.</param> /// <param name="unitsName">Name of the units.</param> /// <param name="unitsDescription">The units description.</param> /// <returns></returns> private static NXSiemensParameterDetail CreateParameterDetail(PropertyTypeEnum type, string idPrefix, string Name, IList <NXSiemensUnit> units, string unitsName, string unitsDescription) { NXSiemensParameterDetail parameterDetail = new NXSiemensParameterDetail(); parameterDetail.IdPrefix = idPrefix; parameterDetail.Type = type; parameterDetail.UnitsName = unitsName; parameterDetail.UnitsDescription = unitsDescription; parameterDetail.IdString = idPrefix; parameterDetail.Name = Name; if (units != null && units.Count > 0) { parameterDetail.Units = units; } return(parameterDetail); }
/// <summary> /// Adds the meta data XML node. /// </summary> /// <param name="Metadata">The metadata.</param> /// <param name="parameterDetail">The parameter detail.</param> private static void AddMetaDataXMLNode(XElement Metadata, NXSiemensParameterDetail parameterDetail) { XElement ParameterDetails = new XElement("PropertyDetails"); ParameterDetails.SetAttributeValue("id", parameterDetail.IdString); XElement Name = new XElement("Name"); Name.Value = " " + parameterDetail.Name + " "; if (parameterDetail.Units != null && parameterDetail.Units.Count > 0) { XElement Units = new XElement("Units"); Units.SetAttributeValue("name", parameterDetail.UnitsName); Units.SetAttributeValue("description", parameterDetail.UnitsDescription); foreach (var item in parameterDetail.Units) { if (item != null) { XElement Unit = new XElement("Unit"); if (item.Attribite != null) { Unit.SetAttributeValue(item.Attribite, item.AttribiteValue); } XElement NameOfUnit = new XElement("Name"); NameOfUnit.Value = " " + item.Name + " "; Unit.Add(NameOfUnit); Units.Add(Unit); } else { XElement Unitless = new XElement("Unitless"); Units.Add(Unitless); } } ParameterDetails.Add(Name); ParameterDetails.Add(Units); } else { ParameterDetails.Add(Name); XElement Unitless = new XElement("Unitless"); ParameterDetails.Add(Unitless); } Metadata.Add(ParameterDetails); }
/// <summary> /// Fills the list of parameter details. /// </summary> /// <returns></returns> private static IList <NXSiemensParameterDetail> FillListOFParameterDetails() { IList <NXSiemensParameterDetail> listOfParameters = new List <NXSiemensParameterDetail>(); NXSiemensParameterDetail parameterDetail = null; parameterDetail = CreateParameterDetail(PropertyTypeEnum.MechanicalYield, "Yield Strength_32", "Yield", new List <NXSiemensUnit> { new NXSiemensUnit() { Name = "mN/mm^2(kPa)" } }, "mN/mm^2(kPa)", "milliNewtons per millimeter squared"); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.MechanicalTensile, "Ultimate Tensile Strength_33", "UltTensile", new List <NXSiemensUnit> { new NXSiemensUnit() { Name = "mN/mm^2(kPa)" } }, "mN/mm^2(kPa)", "milliNewtons per millimeter squared"); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.MechanicalTensile, "Thermal Expansion (A)_34", "ThermalExpansion", new List <NXSiemensUnit> { new NXSiemensUnit() { Name = "1/C" } }, "1/C", "Expansion coefficient per degree Celsius"); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalThermalConductivity, "Thermal Conductivity (K)_35", "ThermalConductivity", new List <NXSiemensUnit> { new NXSiemensUnit() { Name = "microW/mm-C" } }, "microW/mm-C", "microWatts per millimeter per degree Centrigade"); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "Youngs Modulus (E)_31", "YoungsModulus", new List <NXSiemensUnit> { new NXSiemensUnit() { Name = "mN/mm^2(kPa)" } }, "mN/mm^2(kPa)", "milliNewtons per millimeter squared"); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "Specific Heat (CP)_23", "SpecificHeat", new List <NXSiemensUnit> { new NXSiemensUnit() { Name = "microJ/kg-K" } }, "microJ/kg-K", "microJoules per kilogram per degree Kelvin"); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "Mass Density (RHO)_6", "MassDensity", new List <NXSiemensUnit> { new NXSiemensUnit() { Name = "kg/mm^3" } }, "kg/mm^3", "kilograms per millimeter cubed"); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "Material Type", "Material Type", new List <NXSiemensUnit> { null }, null, null); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "Version", "Version", new List <NXSiemensUnit> { null }, null, null); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "Category", "Category", new List <NXSiemensUnit> { null }, null, null); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "PoissonsRatio", "PoissonsRatio", new List <NXSiemensUnit> { null }, null, null); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "FatigueStrengthExp", "FatigueStrengthExp", new List <NXSiemensUnit> { null }, null, null); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "FatigueDuctCoeff", "FatigueDuctCoeff", new List <NXSiemensUnit> { null }, null, null); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "FatigueDuctExp", "FatigueDuctExp", new List <NXSiemensUnit> { null }, null, null); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "CyclicStrainHardeningExp", "CyclicStrainHardeningExp", new List <NXSiemensUnit> { null }, null, null); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "Fatigue Strength Coefficient_20", "FatigueStrengthCoeff", new List <NXSiemensUnit> { new NXSiemensUnit() { Name = "mN/mm^2(kPa)" } }, "mN/mm^2(kPa)", "milliNewtons per millimeter squared"); listOfParameters.Add(parameterDetail); parameterDetail = CreateParameterDetail(PropertyTypeEnum.PhysicalModulusOfElasticity, "CyclicStrengthCoeff", "CyclicStrengthCoeff", new List <NXSiemensUnit> { new NXSiemensUnit() { Name = "mN/mm^2(kPa)" } }, "mN/mm^2(kPa)", "milliNewtons per millimeter squared"); listOfParameters.Add(parameterDetail); return(listOfParameters); }