// CREATE LIGHTSOURCE BLOCK FROM IES public void CreateIESXmlLightSource() { IES_Parse iesparser = new IES_Parse(); //iesparser.ParseIES(); var lsourcedata = new UNI11733Emitter(); lsourcedata.Quantity = NumberLightSource;//Int32.Parse(firstlinearray[0]); lsourcedata.Description = LampDescription; lsourcedata.CatalogNumber = LampCatalogNumber; lsourcedata.RatedLumens = RatedLumen; lsourcedata.InputWattage = Convert.ToDecimal(InputWattage); lsourcedata.LuminousData = new UNI11733EmitterLuminousData() { LuminousIntensity = new UNI11733EmitterLuminousDataLuminousIntensity() }; lsourcedata.LuminousData.LuminousIntensity.AbsolutePhotometry = ABSPhotom; lsourcedata.LuminousData.LuminousIntensity.NumberMeasured = 1; lsourcedata.LuminousData.LuminousIntensity.NumberHorz = NumberHorizontal; lsourcedata.LuminousData.LuminousIntensity.NumberVert = NumberVertical; lsourcedata.LuminousData.LuminousIntensity.IntData = new IntDataType2[candelaidx]; for (int nh = 0; nh < NumberHorizontal; nh++) { //lsourcedata.LuminousData.LuminousIntensity.IntData = new IntDataType2() ; for (int nv = 0; nv < NumberVertical; nv++) { lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical] = new IntDataType2(); lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical].h = cplaneset[nh]; lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical].hSpecified = true; lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical].v = distcpset[nv]; lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical].vSpecified = true; lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical].Value = IESintensitydata[nv]; } ; } ; //--------------CREATE EMISSIONAREAS BLOCK FROM IES-------------------------- lsourcedata.EmissionAreas = new UNI11733EmitterEmissionAreas(); //------------ CREATE BOTTOM FACE FROM IES----------------------------- lsourcedata.EmissionAreas.BottomFace = new UNI11733EmitterEmissionAreasBottomFace() { BottomArea = new UNI11733EmitterEmissionAreasBottomFaceBottomArea() }; if (NumEmitterBottomFace.NumEmBtmFace != "0") { lsourcedata.EmissionAreas.BottomFace.NumberBottom = Convert.ToInt32(NumEmitterBottomFace.NumEmBtmFace); lsourcedata.EmissionAreas.BottomFace.BottomArea.Length = Math.Abs(Convert.ToDecimal(EmitterBottomLength.EmBtmLength)); lsourcedata.EmissionAreas.BottomFace.BottomArea.Width = Math.Abs(Convert.ToDecimal(EmitterBottomWidth.EmBtmWidth)); lsourcedata.EmissionAreas.BottomFace.BottomArea.LengthOffset = Convert.ToDecimal(EmitterBottomLengthOffset.EmBtmLengthOff); lsourcedata.EmissionAreas.BottomFace.BottomArea.WidthOffset = Convert.ToDecimal(EmitterBottomWidthOffset.EmBtmWidthoff); if (CircularShapeBtm == true) { lsourcedata.EmissionAreas.BottomFace.BottomArea.Circular = true; lsourcedata.EmissionAreas.BottomFace.BottomArea.CircularSpecified = true; } else { lsourcedata.EmissionAreas.BottomFace.BottomArea.Circular = false; lsourcedata.EmissionAreas.BottomFace.BottomArea.CircularSpecified = false; } } else if (NumEmitterBottomFace.NumEmBtmFace == "0") { lsourcedata.EmissionAreas.BottomFace.NumberBottom = Convert.ToInt32(NumEmitterBottomFace.NumEmBtmFace); lsourcedata.EmissionAreas.BottomFace.BottomArea.Length = Math.Abs(Convert.ToDecimal(EmitterBottomLength.EmBtmLength)); lsourcedata.EmissionAreas.BottomFace.BottomArea.Width = Math.Abs(Convert.ToDecimal(EmitterBottomWidth.EmBtmWidth)); lsourcedata.EmissionAreas.BottomFace.BottomArea.LengthOffset = Convert.ToDecimal(EmitterBottomLengthOffset.EmBtmLengthOff); lsourcedata.EmissionAreas.BottomFace.BottomArea.WidthOffset = Convert.ToDecimal(EmitterBottomWidthOffset.EmBtmWidthoff); lsourcedata.EmissionAreas.BottomFace.BottomArea.Circular = false; lsourcedata.EmissionAreas.BottomFace.BottomArea.CircularSpecified = false; } if (NumEmitterTopFace.NumEmTopFace != "0") { lsourcedata.EmissionAreas.TopFace = new UNI11733EmitterEmissionAreasTopFace(); lsourcedata.EmissionAreas.TopFace.NumberTop = Convert.ToInt32(NumEmitterTopFace.NumEmTopFace); lsourcedata.EmissionAreas.TopFace.TopArea = new UNI11733EmitterEmissionAreasTopFaceTopArea(); lsourcedata.EmissionAreas.TopFace.TopArea.Length = Math.Abs(Convert.ToDecimal(EmitterTopLength.EmTopLength)); lsourcedata.EmissionAreas.TopFace.TopArea.Width = Math.Abs(Convert.ToDecimal(EmitterTopWidth.EmTopWidth)); lsourcedata.EmissionAreas.TopFace.TopArea.LengthOffset = Convert.ToDecimal(EmitterTopLengthOffset.EmTopLengthOff); lsourcedata.EmissionAreas.TopFace.TopArea.WidthOffset = Convert.ToDecimal(EmitterTopWidthOffset.EmTopWidthoff); if (CircularShapeTop == true) { lsourcedata.EmissionAreas.TopFace.TopArea.Circular = true; lsourcedata.EmissionAreas.TopFace.TopArea.CircularSpecified = true; } else { lsourcedata.EmissionAreas.TopFace.TopArea.Circular = false; lsourcedata.EmissionAreas.TopFace.TopArea.CircularSpecified = false; } } if (NumEmitterC0Face.NumEmC0Face != "0") { lsourcedata.EmissionAreas.C0Face = new UNI11733EmitterEmissionAreasC0Face(); lsourcedata.EmissionAreas.C0Face.NumberC0 = Convert.ToInt32(NumEmitterC0Face.NumEmC0Face); lsourcedata.EmissionAreas.C0Face.C0Area = new UNI11733EmitterEmissionAreasC0FaceC0Area(); lsourcedata.EmissionAreas.C0Face.C0Area.Length = Math.Abs(Convert.ToDecimal(EmitterC0Width.EmC0Width)); lsourcedata.EmissionAreas.C0Face.C0Area.Height = Math.Abs(Convert.ToDecimal(EmitterC0Height.EmC0Height)); lsourcedata.EmissionAreas.C0Face.C0Area.LengthOffset = Convert.ToDecimal(EmitterC0WidthOffset.EmC0Widthoff); lsourcedata.EmissionAreas.C0Face.C0Area.HeightOffset = Convert.ToDecimal(EmitterC0HeightOffset.EmC0HeightOff); if (CircularShapeC0 == true) { lsourcedata.EmissionAreas.C0Face.C0Area.Circular = true; lsourcedata.EmissionAreas.C0Face.C0Area.CircularSpecified = true; } else { lsourcedata.EmissionAreas.C0Face.C0Area.Circular = false; lsourcedata.EmissionAreas.C0Face.C0Area.CircularSpecified = false; } } if (NumEmitterC90Face.NumEmC90Face != "0") { lsourcedata.EmissionAreas.C90Face = new UNI11733EmitterEmissionAreasC90Face(); lsourcedata.EmissionAreas.C90Face.NumberC90 = Convert.ToInt32(NumEmitterC90Face.NumEmC90Face); lsourcedata.EmissionAreas.C90Face.C90Area = new UNI11733EmitterEmissionAreasC90FaceC90Area(); lsourcedata.EmissionAreas.C90Face.C90Area.Width = Math.Abs(Convert.ToDecimal(EmitterC90Length.EmC90Length)); lsourcedata.EmissionAreas.C90Face.C90Area.Height = Math.Abs(Convert.ToDecimal(EmitterC0Height.EmC0Height)); lsourcedata.EmissionAreas.C90Face.C90Area.WidthOffset = Convert.ToDecimal(EmitterC90LengthOffset.EmC90LengthOff); lsourcedata.EmissionAreas.C90Face.C90Area.HeightOffset = Convert.ToDecimal(EmitterC90HeightOffset.EmC90HeightOff); if (CircularShapeC90 == true) { lsourcedata.EmissionAreas.C90Face.C90Area.Circular = true; lsourcedata.EmissionAreas.C90Face.C90Area.CircularSpecified = true; } else { lsourcedata.EmissionAreas.C90Face.C90Area.Circular = false; lsourcedata.EmissionAreas.C90Face.C90Area.CircularSpecified = false; } } if (NumEmitterC180Face.NumEmC180Face != "0") { lsourcedata.EmissionAreas.C180Face = new UNI11733EmitterEmissionAreasC180Face(); lsourcedata.EmissionAreas.C180Face.NumberC180 = Convert.ToInt32(NumEmitterC180Face.NumEmC180Face); lsourcedata.EmissionAreas.C180Face.C180Area = new UNI11733EmitterEmissionAreasC180FaceC180Area(); lsourcedata.EmissionAreas.C180Face.C180Area.Length = Math.Abs(Convert.ToDecimal(EmitterC180Width.EmC180Width)); lsourcedata.EmissionAreas.C180Face.C180Area.Height = Math.Abs(Convert.ToDecimal(EmitterC180Height.EmC180Height)); lsourcedata.EmissionAreas.C180Face.C180Area.LengthOffset = Convert.ToDecimal(EmitterC180WidthOffset.EmC180WidthOff); lsourcedata.EmissionAreas.C180Face.C180Area.HeightOffset = Convert.ToDecimal(EmitterC180HeightOffset.EmC180HeightOff); if (CircularShapeC180 == true) { lsourcedata.EmissionAreas.C180Face.C180Area.Circular = true; lsourcedata.EmissionAreas.C180Face.C180Area.CircularSpecified = true; } else { lsourcedata.EmissionAreas.C180Face.C180Area.Circular = false; lsourcedata.EmissionAreas.C180Face.C180Area.CircularSpecified = false; } } if (NumEmitterC270Face.NumEmC270Face != "0") { lsourcedata.EmissionAreas.C270Face = new UNI11733EmitterEmissionAreasC270Face(); lsourcedata.EmissionAreas.C270Face.NumberC270 = Convert.ToInt32(NumEmitterC270Face.NumEmC270Face); lsourcedata.EmissionAreas.C270Face.C270Area = new UNI11733EmitterEmissionAreasC270FaceC270Area(); lsourcedata.EmissionAreas.C270Face.C270Area.Width = Math.Abs(Convert.ToDecimal(EmitterC270Length.EmC270Length)); lsourcedata.EmissionAreas.C270Face.C270Area.Height = Math.Abs(Convert.ToDecimal(EmitterC270Height.EmC270Height)); lsourcedata.EmissionAreas.C270Face.C270Area.WidthOffset = Convert.ToDecimal(EmitterC270LengthOffset.EmC270LengthOff); lsourcedata.EmissionAreas.C270Face.C270Area.HeightOffset = Convert.ToDecimal(EmitterC270HeightOffset.EmC270HeightOff); if (CircularShapeC270 == true) { lsourcedata.EmissionAreas.C270Face.C270Area.Circular = true; lsourcedata.EmissionAreas.C270Face.C270Area.CircularSpecified = true; } else { lsourcedata.EmissionAreas.C270Face.C270Area.Circular = false; lsourcedata.EmissionAreas.C270Face.C270Area.CircularSpecified = false; } } lsourcedata.EmitterCenter = new UNI11733EmitterEmitterCenter(); lsourcedata.EmitterCenter.LengthOffset = Convert.ToDecimal(ECLengthOffset.ECLengthOff); lsourcedata.EmitterCenter.WidthOffset = Convert.ToDecimal(ECWidthOffset.ECWidthOff); lsourcedata.EmitterCenter.HeightOffset = Convert.ToDecimal(ECHeightOffset.ECHeightOff); xml.Emitter = new[] { lsourcedata }; }
// CREATE LIGHTSOURCE BLOCK FROM LDT public void CreateLDTXmlLightSource() { Parse_LDT ldtparser = new Parse_LDT(); //ldtparser.ParseLDT(); var coltempdata = new UNI11733EmitterColorTemperature(); int fixedCCT; if (Int32.TryParse(FixedCCT, out fixedCCT)) { coltempdata.FixedCCT = fixedCCT; } else { coltempdata.FixedCCT = 0; } coltempdata.FixedCCTSpecified = true; //--------------CREATE LIGHTSOURCE BLOCK FROM LDT-------------------------- var lsourcedata = new UNI11733Emitter(); lsourcedata.Quantity = NumberLightSource; lsourcedata.Description = LampDescription; lsourcedata.CatalogNumber = "Not applicable"; lsourcedata.RatedLumens = RatedLumen; lsourcedata.RatedLumensSpecified = true; lsourcedata.InputWattage = Decimal.Parse(InputWattage.Replace(",", ".")); lsourcedata.ColorTemperature = new[] { coltempdata }; lsourcedata.ColorRendering = new UNI11733EmitterColorRendering() { CIE_CRI = new UNI11733EmitterColorRenderingCIE_CRI() }; int ra; if (Int32.TryParse(RaCRI, out ra)) { lsourcedata.ColorRendering.CIE_CRI.Ra = ra; } else { lsourcedata.ColorRendering.CIE_CRI.Ra = 0; } lsourcedata.LuminousData = new UNI11733EmitterLuminousData() { LuminousIntensity = new UNI11733EmitterLuminousDataLuminousIntensity() }; lsourcedata.LuminousData.LuminousIntensity.AbsolutePhotometry = ABSPhotom; lsourcedata.LuminousData.LuminousIntensity.NumberMeasured = 1; lsourcedata.LuminousData.LuminousIntensity.NumberHorz = NumberHorizontal; lsourcedata.LuminousData.LuminousIntensity.NumberVert = NumberVertical; Decimal[] cplaneset = new Decimal[NumberHorizontal]; for (int nhh = 0; nhh < NumberHorizontal; nhh++) { int cpindex = 42 + nhh; cplaneset[nhh] = Decimal.Parse(Ldtlines[cpindex].Replace(",", ".")); //MessageBox.Show(cplaneset[nh].ToString()); } ; Decimal[] distcpset = new Decimal[NumberVertical]; for (int nvv = 0; nvv < NumberVertical; nvv++) { int distcpindex = 42 + NumberHorizontal + nvv; distcpset[nvv] = Decimal.Parse(Ldtlines[distcpindex].Replace(",", ".")); } ; int xmlNHoriz = NumberHorizontal; if (symm == 1) { xmlNHoriz = 1; } ; if (symm == 2) { xmlNHoriz = 180 / (360 / NumberHorizontal) + 1; } ; if (symm == 3) { xmlNHoriz = 180 / (360 / NumberHorizontal) + 1; } ; if (symm == 4) { xmlNHoriz = 90 / (360 / NumberHorizontal) + 1; } ; int candelaidx = xmlNHoriz * NumberVertical; Decimal[] intensitydata = new decimal[candelaidx]; for (int ni = 0; ni < candelaidx; ni++) { int idataindex = 42 + NumberHorizontal + NumberVertical + ni; intensitydata[ni] = Decimal.Parse(Ldtlines[idataindex].Replace(",", ".")); } ; lsourcedata.LuminousData.LuminousIntensity.IntData = new IntDataType2[candelaidx]; for (int nh = 0; nh < xmlNHoriz; nh++) { //lsourcedata.LuminousData.LuminousIntensity.IntData = new IntDataType2() ; for (int nv = 0; nv < NumberVertical; nv++) { lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical] = new IntDataType2(); if (symm == 3) { lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical].h = cplaneset[nh + 90 / (360 / NumberHorizontal)]; } else { lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical].h = cplaneset[nh]; } lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical].hSpecified = true; lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical].v = distcpset[nv]; lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical].vSpecified = true; lsourcedata.LuminousData.LuminousIntensity.IntData[nv + nh * NumberVertical].Value = intensitydata[nv]; } ; } ; //--------------CREATE EMISSIONAREAS BLOCK FROM LDT -------------------------- lsourcedata.EmissionAreas = new UNI11733EmitterEmissionAreas(); //------------ CREATE BOTTOM FACE FROM LDT----------------------------- if (DFF > 10) { lsourcedata.EmissionAreas.BottomFace = new UNI11733EmitterEmissionAreasBottomFace() { BottomArea = new UNI11733EmitterEmissionAreasBottomFaceBottomArea() }; lsourcedata.EmissionAreas.BottomFace.NumberBottom = Convert.ToInt32(NumEmitterBottomFace.NumEmBtmFace); lsourcedata.EmissionAreas.BottomFace.BottomArea.Length = Convert.ToDecimal(EmitterBottomLength.EmBtmLength); lsourcedata.EmissionAreas.BottomFace.BottomArea.LengthOffset = Convert.ToDecimal(EmitterBottomLengthOffset.EmBtmLengthOff); if (Convert.ToDecimal(EmitterBottomWidth.EmBtmWidth) == 0) { lsourcedata.EmissionAreas.BottomFace.BottomArea.Width = Convert.ToDecimal(EmitterBottomLength.EmBtmLength); lsourcedata.EmissionAreas.BottomFace.BottomArea.WidthOffset = Convert.ToDecimal(EmitterBottomLengthOffset.EmBtmLengthOff); lsourcedata.EmissionAreas.BottomFace.BottomArea.Circular = true; lsourcedata.EmissionAreas.BottomFace.BottomArea.CircularSpecified = true; } else { lsourcedata.EmissionAreas.BottomFace.BottomArea.Width = Convert.ToDecimal(EmitterBottomWidth.EmBtmWidth); lsourcedata.EmissionAreas.BottomFace.BottomArea.WidthOffset = Convert.ToDecimal(EmitterBottomWidthOffset.EmBtmWidthoff); lsourcedata.EmissionAreas.BottomFace.BottomArea.Circular = false; lsourcedata.EmissionAreas.BottomFace.BottomArea.CircularSpecified = false; } } //------------ CREATE TOP FACE FROM LDT ----------------------------- if (DFF < 60) { lsourcedata.EmissionAreas.TopFace = new UNI11733EmitterEmissionAreasTopFace(); lsourcedata.EmissionAreas.TopFace.NumberTop = Convert.ToInt32(NumEmitterTopFace.NumEmTopFace); lsourcedata.EmissionAreas.TopFace.TopArea = new UNI11733EmitterEmissionAreasTopFaceTopArea(); lsourcedata.EmissionAreas.TopFace.TopArea.Length = Convert.ToDecimal(EmitterTopLength.EmTopLength); lsourcedata.EmissionAreas.TopFace.TopArea.Width = Convert.ToDecimal(EmitterTopWidth.EmTopWidth); lsourcedata.EmissionAreas.TopFace.TopArea.LengthOffset = Convert.ToDecimal(EmitterTopLengthOffset.EmTopLengthOff); lsourcedata.EmissionAreas.TopFace.TopArea.WidthOffset = Convert.ToDecimal(EmitterTopWidthOffset.EmTopWidthoff); if (Convert.ToDecimal(EmitterTopWidth.EmTopWidth) == 0) { lsourcedata.EmissionAreas.TopFace.TopArea.Circular = true; lsourcedata.EmissionAreas.TopFace.TopArea.CircularSpecified = true; } else { lsourcedata.EmissionAreas.TopFace.TopArea.Circular = false; lsourcedata.EmissionAreas.TopFace.TopArea.CircularSpecified = false; } } //------------ CREATE C-0 FACE FROM LDT ----------------------------- if (Convert.ToDecimal(EmitterC0Height.EmC0Height) != 0) { lsourcedata.EmissionAreas.C0Face = new UNI11733EmitterEmissionAreasC0Face(); lsourcedata.EmissionAreas.C0Face.NumberC0 = Convert.ToInt32(NumEmitterC0Face.NumEmC0Face); lsourcedata.EmissionAreas.C0Face.C0Area = new UNI11733EmitterEmissionAreasC0FaceC0Area(); lsourcedata.EmissionAreas.C0Face.C0Area.Length = Convert.ToDecimal(EmitterC0Width.EmC0Width); lsourcedata.EmissionAreas.C0Face.C0Area.Height = Convert.ToDecimal(EmitterC0Height.EmC0Height); lsourcedata.EmissionAreas.C0Face.C0Area.LengthOffset = Convert.ToDecimal(EmitterC0WidthOffset.EmC0Widthoff); lsourcedata.EmissionAreas.C0Face.C0Area.HeightOffset = Convert.ToDecimal(EmitterC0HeightOffset.EmC0HeightOff); if (Convert.ToDecimal(EmitterC0Width.EmC0Width) == 0) { lsourcedata.EmissionAreas.C0Face.C0Area.Circular = true; lsourcedata.EmissionAreas.C0Face.C0Area.CircularSpecified = true; } else { lsourcedata.EmissionAreas.C0Face.C0Area.Circular = false; lsourcedata.EmissionAreas.C0Face.C0Area.CircularSpecified = false; } } //------------ CREATE C-90 FACE FROM LDT ----------------------------- if (Convert.ToDecimal(EmitterC90Height.EmC90Height) != 0) { lsourcedata.EmissionAreas.C90Face = new UNI11733EmitterEmissionAreasC90Face(); lsourcedata.EmissionAreas.C90Face.NumberC90 = Convert.ToInt32(NumEmitterC90Face.NumEmC90Face); lsourcedata.EmissionAreas.C90Face.C90Area = new UNI11733EmitterEmissionAreasC90FaceC90Area(); lsourcedata.EmissionAreas.C90Face.C90Area.Width = Convert.ToDecimal(EmitterC90Length.EmC90Length); lsourcedata.EmissionAreas.C90Face.C90Area.Height = Convert.ToDecimal(EmitterC0Height.EmC0Height); lsourcedata.EmissionAreas.C90Face.C90Area.WidthOffset = Convert.ToDecimal(EmitterC90LengthOffset.EmC90LengthOff); lsourcedata.EmissionAreas.C90Face.C90Area.HeightOffset = Convert.ToDecimal(EmitterC90HeightOffset.EmC90HeightOff); if (Convert.ToDecimal(EmitterC90Length.EmC90Length) == 0) { lsourcedata.EmissionAreas.C90Face.C90Area.Circular = true; lsourcedata.EmissionAreas.C90Face.C90Area.CircularSpecified = true; } else { lsourcedata.EmissionAreas.C90Face.C90Area.Circular = false; lsourcedata.EmissionAreas.C90Face.C90Area.CircularSpecified = false; } } //------------ CREATE C-180 FACE FROM LDT ----------------------------- if (Convert.ToDecimal(EmitterC180Height.EmC180Height) != 0) { lsourcedata.EmissionAreas.C180Face = new UNI11733EmitterEmissionAreasC180Face(); lsourcedata.EmissionAreas.C180Face.NumberC180 = Convert.ToInt32(NumEmitterC180Face.NumEmC180Face); lsourcedata.EmissionAreas.C180Face.C180Area = new UNI11733EmitterEmissionAreasC180FaceC180Area(); lsourcedata.EmissionAreas.C180Face.C180Area.Length = Convert.ToDecimal(EmitterC180Width.EmC180Width); lsourcedata.EmissionAreas.C180Face.C180Area.Height = Convert.ToDecimal(EmitterC180Height.EmC180Height); lsourcedata.EmissionAreas.C180Face.C180Area.LengthOffset = Convert.ToDecimal(EmitterC180WidthOffset.EmC180WidthOff); lsourcedata.EmissionAreas.C180Face.C180Area.HeightOffset = Convert.ToDecimal(EmitterC180HeightOffset.EmC180HeightOff); if (Convert.ToDecimal(EmitterC180Width.EmC180Width) == 0) { lsourcedata.EmissionAreas.C180Face.C180Area.Circular = true; lsourcedata.EmissionAreas.C180Face.C180Area.CircularSpecified = true; } else { lsourcedata.EmissionAreas.C180Face.C180Area.Circular = false; lsourcedata.EmissionAreas.C180Face.C180Area.CircularSpecified = false; } } //------------ CREATE C-270 FACE FROM LDT ----------------------------- if (Convert.ToDecimal(EmitterC270Height.EmC270Height) != 0) { lsourcedata.EmissionAreas.C270Face = new UNI11733EmitterEmissionAreasC270Face(); lsourcedata.EmissionAreas.C270Face.NumberC270 = Convert.ToInt32(NumEmitterC270Face.NumEmC270Face); lsourcedata.EmissionAreas.C270Face.C270Area = new UNI11733EmitterEmissionAreasC270FaceC270Area(); lsourcedata.EmissionAreas.C270Face.C270Area.Width = Convert.ToDecimal(EmitterC270Length.EmC270Length); lsourcedata.EmissionAreas.C270Face.C270Area.Height = Convert.ToDecimal(EmitterC270Height.EmC270Height); lsourcedata.EmissionAreas.C270Face.C270Area.WidthOffset = Convert.ToDecimal(EmitterC270LengthOffset.EmC270LengthOff); lsourcedata.EmissionAreas.C270Face.C270Area.HeightOffset = Convert.ToDecimal(EmitterC270HeightOffset.EmC270HeightOff); if (Convert.ToDecimal(EmitterC270Length.EmC270Length) == 0) { lsourcedata.EmissionAreas.C270Face.C270Area.Circular = true; lsourcedata.EmissionAreas.C270Face.C270Area.CircularSpecified = true; } else { lsourcedata.EmissionAreas.C270Face.C270Area.Circular = false; lsourcedata.EmissionAreas.C270Face.C270Area.CircularSpecified = false; } } //Decimal LDClengthoff = 0; //Decimal LDCwidthoff = 0; //Decimal LDCheightoff; //MessageBox.Show(DFF.ToString); LDClengthoff = Convert.ToDecimal(ECLengthOffset.ECLengthOff); LDCwidthoff = Convert.ToDecimal(ECWidthOffset.ECWidthOff); if (DFF >= 40m && DFF < 60m) { LDCheightoff = 0; } else { LDCheightoff = -(Convert.ToDecimal(ECHeightOffset.ECHeightOff) / 2m); //MessageBox.Show(LDCheightoff.ToString()); } lsourcedata.EmitterCenter = new UNI11733EmitterEmitterCenter(); lsourcedata.EmitterCenter.LengthOffset = LDClengthoff; lsourcedata.EmitterCenter.WidthOffset = LDCwidthoff; lsourcedata.EmitterCenter.HeightOffset = LDCheightoff; xml.Emitter = new[] { lsourcedata }; }