Beispiel #1
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();


            #region TopTrackY

            ///////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrackYXX
            part = new Part(3406, "TopTrackYXXX", this, 1, (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX2 + pockYtrackAdd + doorGap);
            part.PartGroupType = "TopTrackY";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrackYX
            part = new Part(3406, "TopTrackYXX", this, 1, (trackHelper.DoorPanelWidth * 3.0m) - stileOverLap + pockYtrackAdd + yTrAccess);
            part.PartGroupType = "TopTrackY";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // TopTrackYOX
            part = new Part(3406, "TopTrackYX", this, 1, (trackHelper.DoorPanelWidth * 2.0m) + pockYtrackAdd + yTrAccess);
            part.PartGroupType = "TopTrackY";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            //ShapedYtrackRubber -->>
            part = new Part(3766, "ShapedYtrackRubber", this, 2, 0.0m);
            part.PartGroupType = "TopTrackY";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PocketGuides

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // PocketGuide
            part = new Part(5151, "WedgePocketGuide", this, 4, 0.0m);
            part.PartGroupType = "PocketGuides";
            part.PartLabel     = "";
            part.PartThick     = 0.405m;
            part.PartWidth     = 1.4715m;
            part.PartLength    = 5.0m;
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Over_Travel

            ///////////////////////////////////////////////////////////////////////////////////////////////

            //OTB_Left
            part = new Part(5425, "OTB_Left", this, 2, 0.0m);
            part.PartGroupType = "Over_Travel";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            //OTB_Filler
            part = new Part(5271, "OTB_Filler", this, 2, 0.0m);
            part.PartGroupType = "Over_Travel";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region QuadSeal

            ///////////////////////////////////////////////////////////////////////////////////////////////

            //QuadSeal
            part = new Part(4910, "QuadSeal", this, 2, 0.0m);
            part.PartGroupType = "QuadSeal";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Frame

            ///////////////////////////////////////////////////////////////////////////////////////////////

            //BzJambXDoor -->>
            part = new Part(4363, "BzJambXDoor", this, 2, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            //BzJambPoc -->>
            part = new Part(4363, "BzJambPoc", this, 2, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // FaciaHeadInt ^^
            part = new Part(4364, "FaciaHeadInt", this, 1, m_subAssemblyWidth - jambDimW - jambDimW);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // FaciaHeadExtXXX ^^
            part = new Part(4364, "FaciaHeadExtXXX", this, 1, (trackHelper.DoorPanelWidth) - jambInset - spltHdRed);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // FaciaHeadExtXX ^^
            part = new Part(4364, "FaciaHeadExtXX", this, 1, (trackHelper.DoorPanelWidth) - faceMidoor);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // FaciaHeadExtX ^^
            part = new Part(4364, "FaciaHeadExtX", this, 1, (trackHelper.DoorPanelWidth) + faceXdoor - jambInset);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // FaciaCapX ^^
            part = new Part(4364, "FaciaCapX", this, 2, faceCapX);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // FaciAccess ^^
            part = new Part(4364, "FaciAccess", this, 2, facEndAcc);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // FacEndCap ^^
            part = new Part(4364, "FacEndCap", this, 2, facEndCap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region WoodClad

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // WoodCladLSJamb -->>
            part = new Part(4339, "WoodCladLSJamb", this, 1, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "WoodClad";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // WoodCladLSHead ^^
            part = new Part(4339, "WoodCladLSHead", this, 1, m_subAssemblyWidth - cladRed2X);
            part.PartGroupType = "WoodClad";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE_Head

            ///////////////////////////////////////////////////////////////////////////////////////////////

            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth * 2.0m + pockYtrackAdd + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOverLap + pockYtrackAdd + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOverLap * 2.0m + pockYtrackAdd + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                default:
                    break;
                }
            }

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;

            // HDPEHead ^^
            part = new Part(3454, "HDPE_Head", this, 1, (trackHelper.DoorPanelWidth * 4.0m) - stileOverLap * 2.0m + pockYtrackAdd + doorGap + headHDPEadd);
            part.PartGroupType = "Frame";
            part.PartLabel     = "Notch @ " + notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 8.625m;
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            part = new Part(4400, "HDPE_Jamb", this, 1, m_subAssemblyHieght - calkGap - reducHDPE);
            part.PartGroupType = "HDPE_Head";
            part.PartLabel     = "";
            part.PartThick     = 0.75m;
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #2
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth, 0);

            BridgeGenie bridgeGenie = new BridgeGenie(2.25m);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();


            #region BladeSS


            //BladeO

            part = new Part(3444, "BladeO", this, 1, trackHelper.DoorPanelWidth + bladeAdd);
            part.PartGroupType = "BladeSS-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            // BladeOX

            part = new Part(3444, "BladeOX", this, 1, (trackHelper.DoorPanelWidth * 2) - stileWidth + bladeAdd);
            part.PartGroupType = "BladeSS-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            // BladeOXX

            part = new Part(3444, "BladeOXX", this, 1, (trackHelper.DoorPanelWidth * 3) - stileWidth * 2 + bladeAdd);
            part.PartGroupType = "BladeSS-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            // BladeOXXX

            part = new Part(3444, "BladeOXXX", this, 1, (trackHelper.DoorPanelWidth * 4) - stileWidth * 3 + bladeAdd);
            part.PartGroupType = "BladeSS-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            // BladeOXXXX

            part = new Part(3444, "BladeOXXX", this, 1, (trackHelper.DoorPanelWidth * 5) - stileWidth * 4 + bladeAdd * 2.0m);
            part.PartGroupType = "BladeSS-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            #endregion


            #region BridgeAssemble

            //BridgeAssemble

            for (int i = 1; i < panelCount + 1; i++)
            {
                //Bridge

                if (i > 1)
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble-Parts";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                        waste += 0.125m;
                    }
                    part = new Part(3445, "Cutting Waste", this, 1, waste);
                    m_parts.Add(part);
                }

                else
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble-Parts";
                        part.PartLabel     = "";

                        m_parts.Add(part);
                        waste += 0.125m;
                    }
                    part = new Part(3445, "Cutting Waste", this, 1, waste);
                    m_parts.Add(part);
                }

                //BridgeClips

                if (i > 1)
                {
                    part = new Part(3446, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble-Parts";
                    part.PartLabel     = "";

                    m_parts.Add(part);
                }

                else
                {
                    part = new Part(3446, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble-Parts";
                    part.PartLabel     = "";

                    m_parts.Add(part);
                }


                //TrackBolts

                if (i > 1)
                {
                    part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble-Parts";
                    part.PartLabel     = "";

                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble-Parts";
                    part.PartLabel     = "";

                    m_parts.Add(part);
                }



                //TrackClips

                part = new Part(3447, "TrackClips", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);



                part = new Part(3449, "CapScrews", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);



                //FlangeNuts

                if (i > 1)
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble-Parts";
                    part.PartLabel     = "";

                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble-Parts";
                    part.PartLabel     = "";

                    m_parts.Add(part);
                }


                //NutPlateConnector

                if (i > 1 && i != panelCount)
                {
                    // your the second door but NOT second to last
                    if (i >= 2 && i < (panelCount - 1))
                    {
                        part = new Part(3448, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        part.PartGroupType = "BridgeAssemble-Parts";
                        part.PartLabel     = "";

                        m_parts.Add(part);
                    }
                    // your the second door but ARE second to last
                    else
                    {
                        part = new Part(3448, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        part.PartGroupType = "BridgeAssemble-Parts";
                        part.PartLabel     = "";

                        m_parts.Add(part);
                    }
                }
            }

            #endregion
        }
Beispiel #3
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Component Component;
            string    Componentleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region TopTrackY

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrackX
            Component = new Component(3406, "TopTrackX", this, 1, (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + doorGap);
            Component.ComponentGroupType = "TopTrackY-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // TopTrackO
            Component = new Component(3406, "TopTrackO", this, 1, (trackHelper.DoorPanelWidth) + doorGap + yTrAccess - yTrack);
            Component.ComponentGroupType = "TopTrackY-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //ShapedYtrackRubber -->>
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(3766, "ShapedYtrackRubber", this, 1, 0.0m);
                Component.ComponentGroupType = "TopTrackY-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////


            #endregion

            #region Over_Travel

            //////////////////////////////////////////////////////////////////////////////

            //OTB_Right
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(5216, "OTB_Right", this, 1, 0.0m);
                Component.ComponentGroupType = "Over_Travel";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            //OTB_Filler
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(5271, "OTB_Filler", this, 1, 0.0m);
                Component.ComponentGroupType = "Over_Travel";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //AlumJambXDoor -->>
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4357, "AlumJambXDoor", this, 1, m_subAssemblyHieght - calkGap);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            //AlumJambIntODoor -->>
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(4357, "AlumJambIntODoor", this, 1, m_subAssemblyHieght - reducHDPE - calkGap);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            //AlumJambExtODoor -->>
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(4357, "AlumJambExtODoor", this, 1, m_subAssemblyHieght - calkGap);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////


            // FaciaHeadInt ^^
            Component = new Component(4362, "FaciaHeadInt", this, 1, m_subAssemblyWidth - jambDimW - jmbFinWall);
            Component.ComponentGroupType = "Frame-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            ////////////////////////////////////////////////////////////////////////////////

            // FaciaHeadExtX ^^
            Component = new Component(4362, "FaciaHeadExtX", this, 1, m_subAssemblyWidth - jambDimW + doorGap - jambInset);
            Component.ComponentGroupType = "Frame-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            ////////////////////////////////////////////////////////////////////////////////

            // FaciaHeadExtO ^^
            Component = new Component(4362, "FaciaHeadExtO", this, 1, (trackHelper.DoorPanelWidth) - AglORed - jambInset);
            Component.ComponentGroupType = "Frame-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            ////////////////////////////////////////////////////////////////////////////////

            // FaciaCap9 ^^
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(4362, "FaciaCap9", this, 1, FaciaCap9);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // FaciaCap10 ^^
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(4362, "FaciaCap10", this, 1, FaciaCap10);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // FaciaCap11 ^^
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(4362, "FaciaCap11", this, 1, FaciaCap11);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // AccessPlate ^^
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(911, "AccessPlate", this, 1, FaciaCap11);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////


            #endregion

            #region Pile_LS_Seals

            //////////////////////////////////////////////////////////////////////////////

            //Pile_LS_Seals -->>
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4384, "Pile_LS_Seals", this, 1, m_subAssemblyHieght - calkGap);
                Component.ComponentGroupType = "Pile_LS_Seals-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            //Pile_LS_Seals -->>
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(4384, "Pile_LS_Seals", this, 1, m_subAssemblyHieght - reducHDPE - calkGap);
                Component.ComponentGroupType = "Pile_LS_Seals-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            //Pile_LS_Seals -->>
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(4384, "Pile_LS_Seals", this, 1, m_subAssemblyHieght - calkGap);
                Component.ComponentGroupType = "Pile_LS_Seals-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////


            // Pile_LS_Seals ^^
            Component = new Component(4384, "Pile_LS_Seals", this, 1, m_subAssemblyWidth - jambDimW - jambInset);
            Component.ComponentGroupType = "Pile_LS_Seals-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            Component = new Component(4384, "Pile_LS_Seals", this, 1, m_subAssemblyWidth - jambDimW + doorGap - jambInset);
            Component.ComponentGroupType = "Pile_LS_Seals-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            Component = new Component(4384, "Pile_LS_Seals", this, 1, (trackHelper.DoorPanelWidth) - AglORed - jambInset);
            Component.ComponentGroupType = "Pile_LS_Seals-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(4384, "Pile_LS_Seals", this, 1, FaciaCap9);
                Component.ComponentGroupType = "Pile_LS_Seals-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(4384, "Pile_LS_Seals", this, 1, FaciaCap10);
                Component.ComponentGroupType = "Pile_LS_Seals-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(4384, "Pile_LS_Seals", this, 1, FaciaCap11);
                Component.ComponentGroupType = "Pile_LS_Seals-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////



            #endregion

            #region HDPE_Head

            //////////////////////////////////////////////////////////////////////////////

            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOvrLpX2 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                case 4:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX3 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }


                default:
                    break;
                }
            }

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;


            // HDPE_Head ^^
            Component = new Component(3442, "HDPE_Head", this, 1, (trackHelper.DoorPanelWidth * panelCount) - stileOverLap + headHDPEadd2X);
            Component.ComponentGroupType = "Frame-Components";
            Component.ComponentLabel     = notchHDPE;
            Component.ComponentThick     = 0.75m;
            Component.ComponentWidth     = 5.75m;

            m_Components.Add(Component);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4400, "HDPE_Jamb", this, 1, m_subAssemblyHieght - calkGap - reducHDPE);
                Component.ComponentGroupType = "HDPE_Head-Components";
                Component.ComponentLabel     = "";
                Component.ComponentThick     = 0.75m;
                Component.ComponentWidth     = 2.875m;

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4400, "HDPE_Jamb", this, 1, m_subAssemblyHieght - calkGap - reducHDPE);
                Component.ComponentGroupType = "HDPE_Head-Components";
                Component.ComponentLabel     = "";
                Component.ComponentThick     = 0.75m;
                Component.ComponentWidth     = 2.75m;

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #4
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region TopTrackUni

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrackPXXP
            part = new Part(3406, "TopTrackPXXP", this, 1, (trackHelper.DoorPanelWidth * 4.0m) + jambReduce2X + doorGap2X + doorGap);
            part.PartGroupType = "TopTrackUni";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PocketGuides

            // PocketGuide
            part = new Part(5151, "WedgePocketGuide", this, 4, 0.0m);
            part.PartGroupType = "PocketGuides";
            part.PartLabel     = "";
            part.PartThick     = 0.405m;
            part.PartWidth     = 1.4715m;
            part.PartLength    = 5.0m;
            m_parts.Add(part);

            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //AlumJambXXDoor -->>
            part = new Part(4357, "AlumJambXXDoor", this, 4, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHeadXX ^^
            part = new Part(4362, "SplitHeadXX", this, 2, m_subAssemblyWidth - jambDimW - jambInset);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Pile_LS_Seals

            //////////////////////////////////////////////////////////////////////////////

            //Pile_LS_Seals -->>
            part = new Part(3979, "Pile_LS_Seals", this, 4, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // Pile_T_Slot ^^
            part = new Part(3979, "Pile_LS_Seals", this, 2, m_subAssemblyWidth - jambDimW - jambInset);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE_Head

            //////////////////////////////////////////////////////////////////////////////

            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOvrLpX2 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                case 4:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX3 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }


                default:
                    break;
                }
            }

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;

            // HDPE_Head ^^
            part = new Part(3442, "HDPE_Head", this, 1, (trackHelper.DoorPanelWidth * 4.0m) + jambReduce2X + doorGap2X + doorGap);
            part.PartGroupType = "HDPE_Head";
            part.PartLabel     = notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 2.875m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #5
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();

            #region TopTrack

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //Top22mmTrack_X
            part = new Part(4447, "Top22mmTrack_X", this, 1, m_subAssemblyWidth - 1.375m);
            part.PartGroupType = "TopTrack";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // Top22mmTrackO_
            part = new Part(4447, "Top22mmTrackO_", this, 1, trackHelper.DoorPanelWidth - calkGap);
            part.PartGroupType = "TopTrack";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region BotTrack

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // BotTrackX
            part = new Part(4730, "BotTrackX", this, 1, m_subAssemblyWidth - jambSplThickX2);
            part.PartGroupType = "BotTrack";
            part.PartLabel     = "";
            m_parts.Add(part);

            // BotTrackO
            part = new Part(4730, "BotTrackO", this, 1, trackHelper.DoorPanelWidth + doorGap + trackAddO);
            part.PartGroupType = "BotTrack";
            part.PartLabel     = "";
            m_parts.Add(part);

            // BotTrackScreenX
            part = new Part(4730, "BotTrackScreenX", this, 1, m_subAssemblyWidth - jambSplThickX2);
            part.PartGroupType = "BotTrack";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region TrackCoverSS

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // TrackCoverSSX
            part = new Part(4760, "TrackCoverSSX", this, 1, m_subAssemblyWidth - jambSplThickX2);
            part.PartGroupType = "TrackCoverSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            // TrackCoverSSO
            part = new Part(4760, "TrackCoverSSO", this, 1, trackHelper.DoorPanelWidth + doorGap + trackAddO);
            part.PartGroupType = "TrackCoverSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            // TrackCvrSSScrnX
            part = new Part(4760, "TrackCvrSSScrnX", this, 1, m_subAssemblyWidth - jambSplThickX2);
            part.PartGroupType = "TrackCoverSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region 316StainlessPan

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // 316_14gaAnglePan
            part = new Part(316, "316_14gaAnglePan", this, 1, m_subAssemblyWidth + sillPanAdd2X);
            part.PartGroupType = "316StainlessPan";
            part.PartLabel     = "XO";
            part.PartThick     = 0.875m;
            part.PartWidth     = 5.50m;
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region 464SheetMetal

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // ACRE_SMBacker
            part = new Part(4000, "ACRE_SMBacker", this, 1, m_subAssemblyWidth - trackHelper.DoorPanelWidth - 3.3125m);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "B-25";
            part.PartThick     = 0.75m;
            part.PartWidth     = 1.9588m;
            m_parts.Add(part);

            // 464HdChl_OX
            part = new Part(299, "464HdChl_OX", this, 1, m_subAssemblyWidth - trackHelper.DoorPanelWidth - 3.3125m);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "T-12";
            part.PartThick     = 0.1563m;
            part.PartWidth     = 1.9375m;
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // ACRE_SMBacker
            part = new Part(4000, "ACRE_SMBacker", this, 1, m_subAssemblyWidth - jambSplThickX2);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "B-4";
            part.PartThick     = 0.875m;
            part.PartWidth     = 0.5166m;
            m_parts.Add(part);

            // 464SilChl_OX
            part = new Part(299, "464SilChl_OX", this, 1, m_subAssemblyWidth - jambSplThickX2);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "T-4";
            part.PartThick     = 0.875m;
            part.PartWidth     = 0.6485m;
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // ACRE_SMBacker
            part = new Part(4000, "ACRE_SMBacker", this, 1, m_subAssemblyWidth + 1.5m);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "B-3";
            part.PartThick     = 0.875m;
            part.PartWidth     = 0.9776m;
            m_parts.Add(part);

            // 464SilChl_OX
            part = new Part(299, "464SilChl_OX", this, 1, trackHelper.DoorPanelWidth + 1.5m);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "T-3";
            part.PartThick     = 0.3137m;
            part.PartWidth     = 1.1102m;
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // ACRE_SMBacker
            part = new Part(4000, "ACRE_SMBacker", this, 1, trackHelper.DoorPanelWidth + 1.5m);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "B-2";
            part.PartThick     = 0.875m;
            part.PartWidth     = 1.5807m;
            m_parts.Add(part);

            // 464SilChl_OX
            part = new Part(299, "464SilChl_OX", this, 1, trackHelper.DoorPanelWidth + 1.5m);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "T-2";
            part.PartThick     = 0.3137m;
            part.PartWidth     = 1.7133m;
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // ACRE_SMBacker_OX
            part = new Part(4000, "ACRE_SMBacker_OX", this, 1, m_subAssemblyWidth - trackHelper.DoorPanelWidth - jambDimW - jambSplThickX2);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "B-29";
            part.PartThick     = 0.875m;
            part.PartWidth     = 3.1438m;
            m_parts.Add(part);

            // 464SilChl_OX
            part = new Part(299, "464SilChl_OX", this, 1, m_subAssemblyWidth - trackHelper.DoorPanelWidth - jambDimW - jambSplThickX2);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "T-16";
            part.PartThick     = 0.3137m;
            part.PartWidth     = 3.2764m;
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // ACRE_SMBacker -->>
            part = new Part(4000, "ACRE_SMBacker", this, 1, m_subAssemblyWidth - jambSplThickX2);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "B-1";
            part.PartThick     = 0.875m;
            part.PartWidth     = 0.7128m;
            m_parts.Add(part);

            // 464SilChl_XO -->>
            part = new Part(299, "464SilChl_XO", this, 1, m_subAssemblyWidth - jambSplThickX2);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "T-1";
            part.PartThick     = 0.5625m;
            part.PartWidth     = 0.9191m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // ACRE_SMBacker -->>
            part = new Part(4000, "ACRE_SMBacker", this, 1, m_subAssemblyHieght - reducHDPE);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "B-14";
            part.PartThick     = 0.575m;
            part.PartWidth     = 3.4588m;
            m_parts.Add(part);

            // 464_JambScrnChanl <<--
            part = new Part(299, "464_JambScrnChanl", this, 1, m_subAssemblyHieght - reducHDPE);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "T-7";
            part.PartThick     = 0.4063m;
            part.PartWidth     = 3.3963m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // ACRE_SMBacker -->>
            part = new Part(4000, "ACRE_SMBacker", this, 1, m_subAssemblyHieght - reducHDPE);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "B-8";
            part.PartThick     = 0.575m;
            part.PartWidth     = 1.2926m;
            m_parts.Add(part);

            // 464_JambScrnChanl <<--
            part = new Part(299, "464_JambScrnChanl", this, 1, m_subAssemblyHieght - reducHDPE);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "T-6";
            part.PartThick     = 0.4063m;
            part.PartWidth     = 1.2301m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // ACRE_SMBacker -->>
            part = new Part(4000, "ACRE_SMBacker", this, 1, m_subAssemblyHieght - reducHDPE);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "B-10";
            part.PartThick     = 0.5766m;
            part.PartWidth     = 2.1662m;
            m_parts.Add(part);

            // 464_JambScrnChanl <<--
            part = new Part(299, "464_JambScrnChanl", this, 1, m_subAssemblyHieght - reducHDPE);
            part.PartGroupType = "464SheetMetal";
            part.PartLabel     = "T-5";
            part.PartThick     = 0.4063m;
            part.PartWidth     = 2.1037m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //BrzSplitJamb <<--
            part = new Part(4891, "BrzSplitJamb", this, 1, m_subAssemblyHieght - jambSpltRed);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //BrzSplitJamb <<--
            part = new Part(4891, "BrzSplitJamb", this, 1, m_subAssemblyHieght - jambSpltRed);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //BrzSplitJamb -->>
            part = new Part(4891, "BrzSplitJamb", this, 1, m_subAssemblyHieght - jambSpltRed);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //BrzSplitJamb -->>
            part = new Part(4891, "BrzSplitJamb", this, 1, m_subAssemblyHieght - jambSpltRed);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // BrzSplitHead ^^
            part = new Part(4891, "BrzSplitHead", this, 1, m_subAssemblyWidth - jambDimW2X);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // BrzSplitHead ^^
            part = new Part(4891, "BrzSplitHead", this, 1, m_subAssemblyWidth - jambDimW2X);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Pile_Seals

            //////////////////////////////////////////////////////////////////////////////

            //Pile_Seals -->>
            part = new Part(1032, "Pile_Seals", this, 1, m_subAssemblyHieght - jambSpltRed);
            part.PartGroupType = "Pile_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //Pile_Seals -->>
            part = new Part(979, "Pile_Seals", this, 3, m_subAssemblyHieght - jambSpltRed);
            part.PartGroupType = "Pile_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // Pile_Seals ^^
            part = new Part(1032, "Pile_Seals", this, 2, m_subAssemblyWidth - jambDimW2X);
            part.PartGroupType = "Pile_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region ACRE_HD_JMB

            //////////////////////////////////////////////////////////////////////////////

            // ACRE_Head ^^
            part = new Part(4000, "ACRE_Head", this, 1, m_subAssemblyWidth - jambSplThickX2);
            part.PartGroupType = "ACRE_HD_JMB";
            part.PartLabel     = "B-11";
            part.PartThick     = 0.75m;
            part.PartWidth     = 5.5m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // ACRE_Jamb
            part = new Part(4000, "ACRE_Jamb", this, 1, m_subAssemblyHieght - reducHDPE);
            part.PartGroupType = "ACRE_HD_JMB";
            part.PartLabel     = "B-13";
            part.PartThick     = 0.75m;
            part.PartWidth     = 5.5m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // ACRE_Jamb
            part = new Part(4000, "ACRE_Jamb", this, 1, m_subAssemblyHieght - reducHDPE);
            part.PartGroupType = "ACRE_HD_JMB";
            part.PartLabel     = "B-13";
            part.PartThick     = 0.75m;
            part.PartWidth     = 5.5m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_JmbGuide
            part = new Part(5296, "HDPE_JmbGuide", this, 1, m_subAssemblyHieght - reducHDPE);
            part.PartGroupType = "HDPE_HD_JMB";
            part.PartLabel     = "B-6";
            part.PartThick     = 0.5625m;
            part.PartWidth     = 0.8507m;
            m_parts.Add(part);

            // HDPE_JmbGuide
            part = new Part(5296, "HDPE_JmbGuide", this, 1, m_subAssemblyHieght - reducHDPE);
            part.PartGroupType = "HDPE_HD_JMB";
            part.PartLabel     = "B-6";
            part.PartThick     = 0.5625m;
            part.PartWidth     = 0.8507m;
            m_parts.Add(part);

            // HDPE_ScreenTrack ^^
            part = new Part(5296, "HDPE_ScreenTrack", this, 1, m_subAssemblyWidth - screenRed2X);
            part.PartGroupType = "HDPE_ScreenTrack";
            part.PartLabel     = "B-5";
            part.PartThick     = 0.73m;
            part.PartWidth     = 0.625m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #6
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - stileOvrLpX3 - doorGap, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region TopTrackY

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrackX
            part = new Part(4447, "TopTrackX", this, 1, (trackHelper.DoorPanelWidth * 4.0m) - wallFin2X);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // TopTrackO
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4447, "TopTrackO", this, 1, (trackHelper.DoorPanelWidth) + doorGap + yTrack);
                part.PartGroupType = "TopTrackY-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //ShapedYtrackRubber -->>
            for (int i = 0; i < 4; i++)
            {
                part = new Part(3766, "ShapedYtrackRubber", this, 1, 0.0m);
                part.PartGroupType = "TopTrackY-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////


            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //Jamb_4363_ExtODoor -->>
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4363, "Jamb_4363_ExtODoor", this, 1, m_subAssemblyHieght - calkGap);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            //Jamb_4363_IntODoor -->>
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4363, "Jamb_4363_IntODoor", this, 1, m_subAssemblyHieght - reducHDPE - calkGap);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            // FaciaHd_4364_Int ^^
            part = new Part(4364, "FaciaHd_4364_Int", this, 1, m_subAssemblyWidth - jambDim2X);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // FaciaHd_4364_ExtXX ^^
            part = new Part(4364, "FaciaHd_4364_ExtXX", this, 1, (trackHelper.DoorPanelWidth * 2.0m - stileOvrLpX2 - accessRed2X));
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // FaciaHd_4364_ExtO ^^
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4364, "FaciaHd_4364_ExtO", this, 1, (trackHelper.DoorPanelWidth) - jambInset + yTrAccess);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // Facia_4364_Cap9 ^^
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4364, "Facia_4364_Cap9", this, 1, FaciaCap9);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // Facia_4364_Cap10 ^^
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4364, "Facia_4364_Cap10", this, 1, FaciaCap10);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // Facia_4364_Cap11 ^^
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4364, "Facia_4364_Cap11", this, 1, FaciaCap11);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // Access_4421_Plate ^^
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4421, "Access_4421_Plate", this, 1, FaciaCap11);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE_Head

            //////////////////////////////////////////////////////////////////////////////

            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOvrLpX2 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                case 4:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX3 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }


                default:
                    break;
                }
            }

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;


            // HDPE_Head ^^
            part = new Part(3442, "HDPE_Head", this, 1, trackHelper.DoorPanelWidth * 4.0m - headHDPEred2X + doorGap);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 4.125m;

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4453, "HDPE_Jamb", this, 1, m_subAssemblyHieght - calkGap - reducHDPE);
                part.PartGroupType = "HDPE_Head-Parts";
                part.PartLabel     = "";
                part.PartThick     = 0.75m;
                part.PartWidth     = 2.125m;

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #7
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth, 0);

            BridgeGenie bridgeGenie = new BridgeGenie(2.25m);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region BladeSS

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //BladePX
            part = new Part(3444, "BladePX", this, 1, trackHelper.DoorPanelWidth * 2.0m - pocketInset);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // BladePXX
            part = new Part(3444, "BladePXX", this, 1, (trackHelper.DoorPanelWidth * 3.0m) - stileWidth - pocketInset);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // BladePXXX
            part = new Part(3444, "BladePXXX", this, 1, (trackHelper.DoorPanelWidth * 4.0m) - 2.0m * stileWidth - pocketInset);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // BladePXXXX
            part = new Part(3444, "BladePXXXX", this, 1, (trackHelper.DoorPanelWidth * 5.0m) - 3.0m * stileWidth - pocketInset + bladeAdd);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion


            #region BridgeAssemble

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //Bridge
            for (int i = 1; i < panelCount + 1; i++)
            {
                if (i > 1)
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                        waste += 0.125m;
                    }
                    part = new Part(3445, "Cutting Waste", this, 1, waste);
                    m_parts.Add(part);
                }
                else
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                        waste += 0.125m;
                    }
                    part = new Part(3445, "Cutting Waste", this, 1, waste);
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //BridgeClips
                if (i > 1)
                {
                    part = new Part(3446, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(3446, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackBolts
                if (i > 1)
                {
                    part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackClips
                part = new Part(3447, "TrackClips", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //CapScrews
                part = new Part(3449, "CapScrews", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //FlangeNuts
                if (i > 1)
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //NutPlateConnector
                if (i > 1 && i != panelCount)
                {
                    // your the second door but NOT second to last
                    if (i >= 3 && i < (panelCount - 1))
                    {
                        part = new Part(3448, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                    }
                    // your the second door but ARE second to last
                    else
                    {
                        part = new Part(3448, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                    }
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////
            }

            #endregion


            #region PVC_Pocket_Drain

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // PVC_Pocket_Drain
            part = new Part(5628, "PVC_Pocket_Drain", this, 1, 0.0m);
            part.PartGroupType = "PVC_Pocket_Drain";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion


            #region PocBrdgAssY

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //Bridge
            decimal CutWaste = decimal.Zero;
            for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
            {
                part = new Part(3445, "BridgePoc", this, 1, bridgeGenie.result[panelCount - 1]);
                part.PartGroupType = "PocBrdgAssY";
                part.PartLabel     = "";
                m_parts.Add(part);
                CutWaste += 0.125m;
            }
            part = new Part(3445, "CutPocWaste", this, 1, CutWaste);
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //BridgeClips
            part = new Part(3446, "BridgeClipsPoc", this, trackHelper.BridgeCount * 2, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //TrackClips
            part = new Part(3447, "TrackClipsPoc", this, trackHelper.BridgeCount * panelCount * 2, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //NutPlateConnector
            // your the second door but NOT second to last
            part = new Part(3448, "NutPlateConPoc", this, (trackHelper.BridgeCount) * (panelCount - 2), 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //CapScrews
            part = new Part(3449, "CapScrewsPoc", this, trackHelper.BridgeCount * panelCount * 2, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //FlangeNuts
            part = new Part(3450, "FlangeNutsPoc", this, trackHelper.BridgeCount * 4, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //TrackBolts
            part = new Part(3451, "TrackBoltsPoc", this, trackHelper.BridgeCount * 2, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #8
0
 public DuplicatesDetectorFacade(DuplicatesDetectorService duplicatesDetectorService, TrackHelper trackHelper)
 {
     cts = new CancellationTokenSource();
     this.duplicatesDetectorService = duplicatesDetectorService;
     this.trackHelper = trackHelper;
 }
Beispiel #9
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth, 0);

            BridgeGenie bridgeGenie = new BridgeGenie(2.50m);

            Component Component;
            string    Componentleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region BladeSS



            //BladePX

            Component = new Component(3444, "BladePX", this, 1, trackHelper.DoorPanelWidth * 2.0m);
            Component.ComponentGroupType = "BladeSS-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);


            // BladePXX

            Component = new Component(3444, "BladePXX", this, 1, (trackHelper.DoorPanelWidth * 3.0m) - stileWidth);
            Component.ComponentGroupType = "BladeSS-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);


            // BladePXXX

            Component = new Component(3444, "BladePXXX", this, 1, (trackHelper.DoorPanelWidth * 4.0m) - 2.0m * stileWidth);
            Component.ComponentGroupType = "BladeSS-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);


            // BladePXXXX

            Component = new Component(3444, "BladePXXXX", this, 1, (trackHelper.DoorPanelWidth * 5.0m) - 3.0m * stileWidth + doorGap);
            Component.ComponentGroupType = "BladeSS-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);



            #endregion


            #region BridgeAssemble

            //BridgeAssemble

            for (int i = 1; i < panelCount + 1; i++)
            {
                //Bridge

                if (i > 1)
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        Component = new Component(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";
                        m_Components.Add(Component);
                        waste += 0.125m;
                    }
                    Component = new Component(3445, "Cutting Waste", this, 1, waste);
                    m_Components.Add(Component);
                }

                else
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        Component = new Component(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";

                        m_Components.Add(Component);
                        waste += 0.125m;
                    }
                    Component = new Component(3445, "Cutting Waste", this, 1, waste);
                    m_Components.Add(Component);
                }
                //BridgeClips

                if (i > 1)
                {
                    Component = new Component(3446, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }

                else
                {
                    Component = new Component(3446, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }


                //TrackBolts

                if (i > 1)
                {
                    Component = new Component(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }
                else
                {
                    Component = new Component(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }



                //TrackClips

                Component = new Component(3447, "TrackClips", this, trackHelper.BridgeCount * i * 2, 0.0m);
                Component.ComponentGroupType = "BridgeAssemble-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);



                Component = new Component(3449, "CapScrews", this, trackHelper.BridgeCount * i * 2, 0.0m);
                Component.ComponentGroupType = "BridgeAssemble-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);



                //FlangeNuts

                if (i > 1)
                {
                    Component = new Component(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }
                else
                {
                    Component = new Component(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }


                //NutPlateConnector

                if (i > 1 && i != panelCount)
                {
                    // your the second door but NOT second to last
                    if (i >= 3 && i < (panelCount - 1))
                    {
                        Component = new Component(3448, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";

                        m_Components.Add(Component);
                    }
                    // your the second door but ARE second to last
                    else
                    {
                        Component = new Component(3448, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";

                        m_Components.Add(Component);
                    }
                }
            }

            #endregion


            #region PocBrdgAssY

            //PocBrdgAssY

            //Bridge

            decimal CutWaste = decimal.Zero;
            for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
            {
                Component = new Component(3445, "BridgePoc", this, 1, bridgeGenie.result[panelCount - 1]);
                Component.ComponentGroupType = "PocBrdgAssY-Components";
                Component.ComponentLabel     = "";
                m_Components.Add(Component);
                CutWaste += 0.125m;
            }
            Component = new Component(3445, "CutPocWaste", this, 1, CutWaste);
            m_Components.Add(Component);

            //BridgeClips

            Component = new Component(3446, "BridgeClipsPoc", this, trackHelper.BridgeCount * 2, 0.0m);
            Component.ComponentGroupType = "PocBrdgAssY-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            //TrackClips
            Component = new Component(3447, "TrackClipsPoc", this, trackHelper.BridgeCount * panelCount * 2, 0.0m);
            Component.ComponentGroupType = "PocBrdgAssY-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            //NutPlateConnector

            // your the second door but NOT second to last

            Component = new Component(3448, "NutPlateConPoc", this, (trackHelper.BridgeCount) * (panelCount - 2), 0.0m);
            Component.ComponentGroupType = "PocBrdgAssY-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            //CapScrews

            Component = new Component(3449, "CapScrewsPoc", this, trackHelper.BridgeCount * panelCount * 2, 0.0m);
            Component.ComponentGroupType = "PocBrdgAssY-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            //FlangeNuts
            Component = new Component(3450, "FlangeNutsPoc", this, trackHelper.BridgeCount * 4, 0.0m);
            Component.ComponentGroupType = "PocBrdgAssY-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            //TrackBolts
            Component = new Component(3451, "TrackBoltsPoc", this, trackHelper.BridgeCount * 2, 0.0m);
            Component.ComponentGroupType = "PocBrdgAssY-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);



            #endregion
        }
Beispiel #10
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth, 0);

            BridgeGenie bridgeGenie = new BridgeGenie(2.25m);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();

            //////////////////////////////////////////////

            #region BladeSS

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //BladeO
            part = new Part(3444, "BladeO", this, 1, trackHelper.DoorPanelWidth + bladeAdd);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // BladeOX
            part = new Part(3444, "BladeOX", this, 1, trackHelper.DoorPanelWidth * 2.0m - stileWidth + bladeAdd);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // BladeOXX
            part = new Part(3444, "BladeOXX", this, 1, trackHelper.DoorPanelWidth * 3.0m - stileWidthX2 + bladeAdd);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // BladeOXXX
            part = new Part(3444, "BladeOXXX", this, 1, trackHelper.DoorPanelWidth * 4.0m - stileWidthX3 + 2.0m * bladeAdd);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PerfecTack

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_O
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4424, "PerfecT_O", this, 1, trackHelper.DoorPanelWidth + bladeAdd);
                part.PartGroupType = "PerfecTack-Parts";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_OX
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4424, "PerfecT_OX", this, 1, trackHelper.DoorPanelWidth * 2.0m - stileWidth + bladeAdd);
                part.PartGroupType = "PerfecTack-Parts";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_OXX
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4424, "PerfecT_OXX", this, 1, trackHelper.DoorPanelWidth * 3.0m - stileWidthX2 + bladeAdd);
                part.PartGroupType = "PerfecTack";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_OXXX
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4424, "PerfecT_OXXX", this, 1, (trackHelper.DoorPanelWidth * 4.0m) - stileWidthX3 + bladeAdd * 2.0m);
                part.PartGroupType = "PerfecTack";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // End_Cap_Gutter
            for (int i = 0; i < panelCount * 2.0m; i++)
            {
                part = new Part(5593, "End_Cap_Gutter", this, 1, 1.25m);
                part.PartGroupType = "PerfecTack";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            //////////////////////////////////////////////

            #region Cross_Gutter

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // Cross_Gutter
            for (int i = 0; i < panelCount - 1.0m; i++)
            {
                part = new Part(5579, "Cross_Gutter", this, 1, 2.83m);
                part.PartGroupType = "Cross_Gutter";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PVC_Drains

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // PVC_90°Drain
            for (int i = 0; i < panelCount - 1; i++)
            {
                part = new Part(5634, "PVC_90°Drain", this, 1, 0.0m);
                part.PartGroupType = "PVC_Drains";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // PVC_StrightDrain
            for (int i = 0; i < panelCount + 1; i++)
            {
                part = new Part(5633, "PVC_StrightDrain", this, 1, 0.0m);
                part.PartGroupType = "PVC_Drains";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region SS_Drains

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //SS_Drains
            for (int i = 0; i < trackHelper.DrainCount; i++)
            {
                part = new Part(4465, "SS_Drains", this, 1, 0.0m);
                part.PartGroupType = "SS_Drains";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            //////////////////////////////////////////////

            #region BridgeAssemble

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //Bridge
            for (int i = 1; i < panelCount + 1; i++)
            {
                if (i > 1)
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                        waste += 0.125m;
                        m_parts.Add(part);

                        //BridgeClips
                        part = new Part(bridgeGenie.Clips[i - 1], "Bridge Clips-" + j.ToString(), this, 1, 0.0m);
                        m_parts.Add(part);
                    }
                    m_parts.Add(part);
                }

                //Bridge
                else
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                        waste += 0.125m;

                        //BridgeClips
                        part = new Part(bridgeGenie.Clips[i - 1], "Bridge Clips-" + j.ToString(), this, 1, 0.0m);
                        m_parts.Add(part);
                    }

                    //CuttingWaste
                    part = new Part(3445, "Cutting Waste", this, 1, waste);
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackBolts
                if (i > 1)
                {
                    part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackClips
                part = new Part(3447, "TrackClips", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //Cap Screws
                part = new Part(3449, "CapScrews", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //FlangeNuts
                if (i > 1)
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }
                part = new Part(3445, "Cutting Waste", this, 1, waste);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////
        }
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region TopTrackUni

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrack_XXXXXP
            part = new Part(3406, "TopTrack_XXXXXP", this, 1, (trackHelper.DoorPanelWidth * 6.0m - sitleOvrLpX4 - jambInset) + trackAddPocket + doorGap);
            part.PartGroupType = "TopTrackUni";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrack__XXXXP
            part = new Part(3406, "TopTrack__XXXXP", this, 1, (trackHelper.DoorPanelWidth * 5.0m - stileOvrLpX3 - jambInset) + trackAddPocket + trackAddOvTrav);
            part.PartGroupType = "TopTrackUni";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrack___XXXP
            part = new Part(3406, "TopTrack___XXXP", this, 1, (trackHelper.DoorPanelWidth * 4.0m - stileOvrLpX2 - jambInset) + trackAddPocket + trackAddOvTrav);
            part.PartGroupType = "TopTrackUni";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrack____XXP
            part = new Part(3406, "TopTrack____XXP", this, 1, (trackHelper.DoorPanelWidth * 3.0m - stileOverLap - jambInset) + trackAddPocket + trackAddOvTrav);
            part.PartGroupType = "TopTrackUni";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrack_____XP
            part = new Part(3406, "TopTrack_____XP", this, 1, (trackHelper.DoorPanelWidth * 2.0m + trackAddPocket - jambInset + trackAddOvTrav));
            part.PartGroupType = "TopTrackUni";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PocketGuides

            // PocketGuide
            part = new Part(5151, "WedgePocketGuide", this, 2, 0.0m);
            part.PartGroupType = "PocketGuides";
            part.PartLabel     = "";
            part.PartThick     = 0.405m;
            part.PartWidth     = 1.4715m;
            part.PartLength    = 5.0m;
            m_parts.Add(part);

            #endregion

            #region Over_Travel

            //////////////////////////////////////////////////////////////////////////////

            //OTB_XO_XP
            part = new Part(5272, "OTB_XO_XP", this, 4, 0.0m);
            part.PartGroupType = "Over_Travel";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //OTB_Filler
            part = new Part(5271, "OTB_Filler", this, 4, 0.0m);
            part.PartGroupType = "Over_Travel";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //AlumJambExtDoor -->>
            part = new Part(4357, "AlumJambExtDoor", this, 2, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //AlumJambIntDoor -->>
            part = new Part(4357, "AlumJambIntDoor", this, 2, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHeadInt_XXXXXP ^^
            part = new Part(4362, "SplitHeadInt_XXXXXP", this, 1, m_subAssemblyWidth - jambDimW2X);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHeadExt_XXXXXP ^^
            part = new Part(4362, "SplitHeadExt_XXXXXP", this, 1, (trackHelper.DoorPanelWidth) - jambInset - spltHdRed);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHeadExt__XXXXP ^^
            part = new Part(4362, "SplitHeadExt___XXXP", this, 1, (trackHelper.DoorPanelWidth) - faceMidoor);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHeadExt___XXXP ^^
            part = new Part(4362, "SplitHeadExt___XXXP", this, 1, (trackHelper.DoorPanelWidth) - faceMidoor);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHeadExt____XXP ^^
            part = new Part(4362, "SplitHeadExt____XXP", this, 1, (trackHelper.DoorPanelWidth) - faceMidoor);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHeadExt_____XP ^^
            part = new Part(4362, "SplitHeadExt_____XP", this, 1, (trackHelper.DoorPanelWidth) + faceXdoor - jambInset);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PocketCloseOut

            //AlumBar
            part = new Part(2556, "AlumBar", this, 3, 0.0m);
            part.PartGroupType = "PocketCloseOut";
            part.PartThick     = 0.25m;
            part.PartWidth     = 3.0m;
            part.PartLength    = 13.75m;
            part.PartLabel     = "XXXXXP";
            m_parts.Add(part);

            //Extira_Closeout
            part = new Part(3210, "Extira_Closeout", this, 1, m_subAssemblyHieght - faceMidoor);
            part.PartGroupType = "PocketCloseOut";
            part.PartThick     = 0.75m;
            part.PartWidth     = 14.125m;
            part.PartLabel     = "XXXXXP";
            m_parts.Add(part);

            //Alum16gaCloseout
            part = new Part(3438, "Alum16gaCloseout", this, 1, m_subAssemblyHieght - faceMidoor);
            part.PartGroupType = "PocketCloseOut";
            part.PartThick     = 0.063m;
            part.PartWidth     = 11.875m;
            part.PartLabel     = "XXXXXP";
            m_parts.Add(part);

            #endregion

            #region QuadSeal

            //////////////////////////////////////////////////////////////////////////////

            //QuadSeal
            part = new Part(4910, "QuadSeal", this, 4, 0.0m);
            part.PartGroupType = "QuadSeal";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Pile_LS_Seals

            //////////////////////////////////////////////////////////////////////////////

            //Pile_LS_Seals -->>
            part = new Part(3979, "Pile_LS_Seals", this, 4, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 2, m_subAssemblyWidth - jambDimW2X);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 1, (trackHelper.DoorPanelWidth) - jambInset - spltHdRed);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 1, (trackHelper.DoorPanelWidth) - faceMidoor);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 1, (trackHelper.DoorPanelWidth) - faceMidoor);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 1, (trackHelper.DoorPanelWidth) + faceXdoor - jambInset);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 3, faceCapX);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 3, facEndAcc);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 3, facEndCap);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE_Head

            //////////////////////////////////////////////////////////////////////////////

            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOvrLpX2 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                case 4:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX3 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }


                default:
                    break;
                }
            }

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;

            // HDPE_Head ^^
            part = new Part(3442, "HDPE_Head", this, 1, (trackHelper.DoorPanelWidth * 4.0m) + jambReduce2X + doorGap2X + doorGap);
            part.PartGroupType = "HDPE_Head";
            part.PartLabel     = notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 2.875m;

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #12
0
 public bool HaveTracksChanged(Track currentTrack, Track nextTrack)
 {
     return(!(TrackHelper.IsSameTrack(_currentTrack, currentTrack) &&
              TrackHelper.IsSameTrack(_nextTrack, nextTrack)));
 }
Beispiel #13
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region TopTrackY


            //TopTrackYX
            part = new Part(3406, "TopTrackYX", this, 1, (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + doorGap);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);



            // TopTrackYOX
            part = new Part(3406, "TopTrackYO", this, 1, (trackHelper.DoorPanelWidth) + doorGap + yTrAccess - yTrack);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            //////////////////////////////////////////////////////////////////////////////

            //ShapedYtrackRubber -->>
            for (int i = 0; i < 2; i++)
            {
                part = new Part(3766, "ShapedYtrackRubber", this, 1, 0.0m);
                part.PartGroupType = "TopTrackY-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Over_Travel

            ////////////////////////////////////////////////////////////////////////////////

            //OTB_OX
            for (int i = 0; i < 1; i++)
            {
                part = new Part(5426, "OTB_OX", this, 1, 0.0m);
                part.PartGroupType = "Over_Travel";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////


            //OTB_Filler
            for (int i = 0; i < 1; i++)
            {
                part = new Part(5271, "OTB_Filler", this, 1, 0.0m);
                part.PartGroupType = "Over_Travel";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //BzJambExt -->>
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4363, "BzJambExt", this, 1, m_subAssemblyHieght - calkGap);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            //AlumJambXDoor -->>
            for (int i = 0; i < 1; i++)
            {
                part = new Part(4357, "AlumJambXDoor", this, 1, m_subAssemblyHieght - calkGap);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            //AluJambIntODoor -->>
            for (int i = 0; i < 1; i++)
            {
                part = new Part(4357, "AlumJambIntODoor", this, 1, m_subAssemblyHieght - reducHDPE - calkGap);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            // BrzHeadExtX ^^
            part = new Part(4364, "BrzHeadExtX", this, 1, (trackHelper.DoorPanelWidth) - jambInset - spltHdRed);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////


            // BrzHeadExtO ^^
            part = new Part(4364, "BrzHeadExtO", this, 1, (trackHelper.DoorPanelWidth) - jambInset + spltHdAdd);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            ////////////////////////////////////////////////////////////////////////////////

            //Brz_OX_OTB_EndCap -->>
            for (int i = 0; i < 1; i++)
            {
                part = new Part(4364, "Brz_OX_OTB_EndCap", this, 1, 0.0m);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";
                part.PartLength    = 2.875m;

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // AlumHeadInt ^^
            part = new Part(4362, "AlumHeadInt", this, 1, m_subAssemblyWidth - jambDimW - calkGap);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////


            #endregion

            #region WoodClad

            ////////////////////////////////////////////////////////////////////////////////

            // WoodCladLSJamb -->>
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4339, "WoodCladLSJamb", this, 1, m_subAssemblyHieght - calkGap);
                part.PartGroupType = "WoodClad-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ///////////////////////////////////////////////////////////////////////////////

            // WoodCladLSHead ^^
            for (int i = 0; i < 1; i++)
            {
                part = new Part(4339, "WoodCladLSHead", this, 1, m_subAssemblyWidth - cladRed2X);
                part.PartGroupType = "WoodClad-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Top_Seal

            for (int i = 0; i < 1; i++)
            {
                part = new Part(3927, "Seal_at_Head", this, 1, 0.0m);
                part.PartGroupType = "Top_Seal-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }


            #endregion

            #region HDPE

            //////////////////////////////////////////////////////////////////////////////

            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
            string  notchHDPE = "notch head @ " + HDPEnotch.ToString();

            // HDPE_Head ^^
            part = new Part(3442, "HDPE_Head", this, 1, (trackHelper.DoorPanelWidth * panelCount) - stileOverLap + headHDPEadd2X);
            part.PartGroupType = "HDPE-Parts";
            part.PartLabel     = notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 5.75m;

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////
            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4400, "HDPE_Jamb", this, 1, m_subAssemblyHieght - calkGap - reducHDPE);
                part.PartGroupType = "HDPE-Parts";
                part.PartLabel     = "";
                part.PartThick     = 0.75m;
                part.PartWidth     = 2.875m;

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////
            //////////////////////////////////////////////////////////////////////////////

            // HDPE_HeadFiller
            for (int i = 0; i < 1; i++)
            {
                part = new Part(4871, "HDPE_HeadFiller", this, 1, 0.0m);
                part.PartGroupType = "HDPE-Parts";
                part.PartLabel     = "";
                part.PartThick     = 0.75m;
                part.PartWidth     = 1.6875m;
                part.PartLength    = 2.4375m;


                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////



            #endregion
        }
Beispiel #14
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth, 0);

            BridgeGenie bridgeGenie = new BridgeGenie(2.25m);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();

            //////////////////////////////////////////////

            #region BladeSS

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // BladePXXP
            part = new Part(3444, "BladePXXP", this, 1, trackHelper.DoorPanelWidth * 2);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            #endregion

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #region PerfecTack

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_PXXP
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4424, "PerfecT_O", this, 1, trackHelper.DoorPanelWidth * 2);
                part.PartGroupType = "PerfecTack-Parts";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // End_Cap_Gutter
            for (int i = 0; i < panelCount * 2.0m; i++)
            {
                part = new Part(5593, "End_Cap_Gutter", this, 1, 1.25m);
                part.PartGroupType = "PerfecTack";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            //////////////////////////////////////////////

            #region PVC_Pocket_Drain

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // PVC_Pocket_Drain
            for (int i = 0; i < 2; i++)
            {
                part = new Part(5628, "PVC_Pocket_Drain", this, 1, 0.0m);
                part.PartGroupType = "PVC_Pocket_Drain";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PVC_Drains

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // PVC_StrightDrain
            for (int i = 0; i < panelCount + 1; i++)
            {
                part = new Part(5633, "PVC_StrightDrain", this, 1, 0.0m);
                part.PartGroupType = "PVC_Drains";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region SS_Drains

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //SS_Drains
            for (int i = 0; i < trackHelper.DrainCount; i++)
            {
                part = new Part(4465, "SS_Drains", this, 1, 0.0m);
                part.PartGroupType = "SS_Drains";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            //////////////////////////////////////////////

            #region BridgeAssemble

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //Bridge
            for (int i = 1; i < panelCount + 1; i++)
            {
                if (i > 1)
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1] + 1);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                        waste += 0.125m;

                        //BridgeClips
                        part = new Part(bridgeGenie.Clips[i - 1], "Bridge Clips-" + j.ToString(), this, 1, +1);
                        m_parts.Add(part);
                    }
                }

                //Bridge
                else
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1] + 1);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                        waste += 0.125m;

                        //BridgeClips
                        part = new Part(bridgeGenie.Clips[i - 1], "Bridge Clips-" + j.ToString(), this, 1, +1);
                        m_parts.Add(part);
                    }
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackBolts
                if (i > 1)
                {
                    part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackClips
                part = new Part(3447, "TrackClips", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //CapScrews
                part = new Part(3449, "CapScrews", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //FlangeNuts
                if (i > 1)
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////
            }

            #endregion

            #region PocBrdgAssY

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //BridgePoc
            decimal CutWaste = decimal.Zero;
            for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
            {
                part = new Part(3445, "BridgePoc", this, 1, bridgeGenie.result[panelCount - 1]);
                part.PartGroupType = "PocBrdgAssY";
                part.PartLabel     = "";
                m_parts.Add(part);
                CutWaste += 0.125m;

                //BridgeClipsPoc
                part = new Part(5435, "BridgeClipsPoc", this, 1, bridgeGenie.result[panelCount - 1]);
                part.PartGroupType = "PocBrdgAssY";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //TrackClips
            part = new Part(3447, "TrackClipsPoc", this, trackHelper.BridgeCount * panelCount * 2, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //CapScrews
            part = new Part(3449, "CapScrewsPoc", this, trackHelper.BridgeCount * panelCount * 2, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //FlangeNuts
            part = new Part(3450, "FlangeNutsPoc", this, trackHelper.BridgeCount * 4, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //TrackBolts
            part = new Part(3451, "TrackBoltsPoc", this, trackHelper.BridgeCount * 2, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //BridgeWaste
            part = new Part(3445, "CutPocWaste", this, 1, CutWaste);
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            //////////////////////////////////////////////
        }
Beispiel #15
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Component Component;
            string    Componentleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region TopTrackUni

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrackPXXXXP
            Component = new Component(3406, "TopTrackPXXXXP", this, 1, m_subAssemblyWidth + trackHelper.DoorPanelWidth + trackAdd1);
            Component.ComponentGroupType = "TopTrackUni-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrackPX_XP
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(3406, "TopTrackPX_XP", this, 1, (trackHelper.DoorPanelWidth / 2.0m) * 2.0m + trackAdd2);
                Component.ComponentGroupType = "TopTrackUni-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //ShapedYtrackRubber -->>
            //for (int i = 0; i < 2; i++)
            //{


            //Component = new Component(3766, "ShapedYtrackRubber", this, 1, 0.0m);
            //Component.ComponentGroupType = "TopTrackY-Components";
            //Component.ComponentLabel = "";

            //m_Components.Add(Component);

            //}

            //////////////////////////////////////////////////////////////////////////////


            #endregion

            #region Over_Travel

            //////////////////////////////////////////////////////////////////////////////

            //OTB_Left
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(5272, "OTB_Left", this, 1, 0.0m);
                Component.ComponentGroupType = "Over_Travel";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            //OTB_Right
            for (int i = 0; i < 1; i++)
            {
                Component = new Component(5216, "OTB_Right", this, 1, 0.0m);
                Component.ComponentGroupType = "Over_Travel";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            //OTB_Filler
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(5271, "OTB_Filler", this, 1, 0.0m);
                Component.ComponentGroupType = "Over_Travel";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //AlumJambXXDoor -->>
            for (int i = 0; i < 4; i++)
            {
                Component = new Component(4357, "AlumJambXXDoor", this, 1, m_subAssemblyHieght - calkGap);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            // FaciaHeadXXXX ^^
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4362, "FaciaHeadXXXX", this, 1, m_subAssemblyWidth - jambDimW2X);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // FaciaHeadExtXXX ^^
            Component = new Component(4362, "FaciaHeadExtXXX", this, 1, (trackHelper.DoorPanelWidth) - jambInset - spltHdRed);
            Component.ComponentGroupType = "Frame-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);


            ////////////////////////////////////////////////////////////////////////////////

            // FaciaHeadExtXX ^^
            Component = new Component(4362, "FaciaHeadExtXX", this, 1, (trackHelper.DoorPanelWidth) - faceMidoor);
            Component.ComponentGroupType = "Frame-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            ////////////////////////////////////////////////////////////////////////////////

            // FaciaHeadExtX ^^
            Component = new Component(4362, "FaciaHeadExtX", this, 1, (trackHelper.DoorPanelWidth) + faceXdoor - jambInset);
            Component.ComponentGroupType = "Frame-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);


            ////////////////////////////////////////////////////////////////////////////////

            // FaciaCapX ^^
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4362, "FaciaCapX", this, 1, faceCapX);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // FaciAccess ^^
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4362, "FaciAccess", this, 1, facEndAcc);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // FacEndCap ^^
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4362, "FacEndCap", this, 1, facEndCap);
                Component.ComponentGroupType = "Frame-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Pile_LS_Seals

            //////////////////////////////////////////////////////////////////////////////

            //Pile_LS_Seals -->>
            for (int i = 0; i < 4; i++)
            {
                Component = new Component(4384, "Pile_LS_Seals", this, 1, m_subAssemblyHieght - calkGap);
                Component.ComponentGroupType = "Pile_LS_Seals-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4384, "Pile_LS_Seals", this, 1, m_subAssemblyWidth - jambDimW2X);
                Component.ComponentGroupType = "Pile_LS_Seals-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            Component = new Component(4384, "Pile_LS_Seals", this, 1, (trackHelper.DoorPanelWidth) - jambInset - spltHdRed);
            Component.ComponentGroupType = "Pile_LS_Seals-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);


            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            Component = new Component(4384, "Pile_LS_Seals", this, 1, (trackHelper.DoorPanelWidth) - faceMidoor);
            Component.ComponentGroupType = "Pile_LS_Seals-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            Component = new Component(4384, "Pile_LS_Seals", this, 1, (trackHelper.DoorPanelWidth) + faceXdoor - jambInset);
            Component.ComponentGroupType = "Pile_LS_Seals-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);


            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4384, "Pile_LS_Seals", this, 1, faceCapX);
                Component.ComponentGroupType = "Pile_LS_Seals-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4384, "Pile_LS_Seals", this, 1, facEndAcc);
                Component.ComponentGroupType = "Pile_LS_Seals-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4384, "Pile_LS_Seals", this, 1, facEndCap);
                Component.ComponentGroupType = "Pile_LS_Seals-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            ////////////////////////////////////////////////////////////////////////////////



            #endregion

            #region HDPE_Head

            //////////////////////////////////////////////////////////////////////////////

            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOvrLpX2 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                case 4:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX3 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }


                default:
                    break;
                }
            }

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;

            // HDPE_Head ^^
            Component = new Component(3442, "HDPE_Head", this, 1, (trackHelper.DoorPanelWidth * 4.0m) + jambReduce2X + doorGap2X + doorGap);
            Component.ComponentGroupType = "Frame-Components";
            Component.ComponentLabel     = notchHDPE;
            Component.ComponentThick     = 0.75m;
            Component.ComponentWidth     = 2.875m;

            m_Components.Add(Component);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            //for (int i = 0; i < 2; i++)
            //{
            //Component = new Component(4400, "HDPE_Jamb", this, 1, m_subAssemblyHieght - calkGap - reducHDPE);
            //Component.ComponentGroupType = "HDPE_Head-Components";
            //Component.ComponentLabel = "";
            //Component.ComponentThick = 0.75m;
            //Component.ComponentWidth = 2.875m;

            //m_Components.Add(Component);

            //}

            //////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #16
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region TopTrackY


            //TopTrackYO

            part = new Part(3406, "TopTrackYO", this, 1, (m_subAssemblyWidth + 2 * stileWidth) / 3 + yTrack + doorGap);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            // TopTrackYOX

            part = new Part(3406, "TopTrackYOX", this, 1, ((m_subAssemblyWidth + 2 * stileWidth) / 3) * 2.0m - stileWidth + jambFinwall + doorGap + yTrack);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            // TopTrackYOXX

            part = new Part(3406, "TopTrackYOXX", this, 1, (m_subAssemblyWidth) + jambFinwall + (doorGap * 2.0m));
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            #endregion


            #region Frame-Parts


            //JambChanl -->>
            for (int i = 0; i < 2; i++)
            {
                part = new Part(3626, "JambChanl", this, 1, m_subAssemblyHieght + jambExtend + floorDep);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }


            //JambAngl -->>
            for (int i = 0; i < 2; i++)
            {
                part = new Part(3629, "JambAngl", this, 1, m_subAssemblyHieght + jambExtend + floorDep);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }


            // FaciaCaps ^^
            for (int i = 0; i < 2; i++)
            {
                part = new Part(3404, "FaciaCaps", this, 1, endCaps);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }



            // FaciaHeadExtO ^^
            part = new Part(3404, "FaciaHeadExtO", this, 1, (trackHelper.DoorPanelWidth) + (jamB) + (yTrack) + (doorGap) + (beYond));
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            // FaciaHeadExtOX ^^
            part = new Part(3404, "FaciaHeadExtOX", this, 1, (trackHelper.DoorPanelWidth) - (stileWidth) - (stileOfst) + (yTrack) + (2.0m * beYond) - (calkGap));
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);



            // FaciaHeadExtOXX ^^
            part = new Part(3404, "FaciaHeadExtOXX", this, 1, (trackHelper.DoorPanelWidth) - (stileWidth) - (stileOfst) + (jamB) + (doorGap) + (beYond) - (calkGap));
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);



            // FaciaHeadInt ^^
            part = new Part(3404, "FaciaHeadInt", this, 1, (m_subAssemblyWidth) + (jamB * 2) + (doorGap * 2));
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            // HDMPHead ^^
            part = new Part(3467, "HDMPHead", this, 1, (m_subAssemblyWidth) + (2 * jamB) + (doorGap * 2));
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);



            #endregion
        }
Beispiel #17
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth, 0);

            BridgeGenie bridgeGenie = new BridgeGenie(2.25m);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();


            #region BladeSS

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //Blades1X
            part = new Part(3444, "Blades1X", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // Blade2X
            part = new Part(3444, "Blade2X", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region BridgeAssemble

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //Bridge
            for (int i = 1; i < panelCount + 1; i++)
            {
                if (i > 1)
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                        waste += 0.125m;
                    }
                    part = new Part(3445, "Cutting Waste", this, 1, waste);
                    m_parts.Add(part);
                }
                else
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                        waste += 0.125m;
                    }
                    part = new Part(3445, "Cutting Waste", this, 1, waste);
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //BridgeClips
                part = new Part(3446, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackBolts
                part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //FlangeNuts
                part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackClips
                part = new Part(3447, "TrackClips", this, trackHelper.BridgeCount * 4, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //CapScrews
                part = new Part(3449, "CapScrews", this, trackHelper.BridgeCount * 4, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////
            }

            #endregion
        }
Beispiel #18
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region TopTrackUni

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrackOXOXO
            for (int i = 0; i < 2; i++)
            {
                part = new Part(3406, "TopTrackOXOXO", this, 1, (trackHelper.DoorPanelWidth) - stileOvrLpX4 * 2.0m);
                part.PartGroupType = "TopTrackUni-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //ShapedYtrackRubber -->>
            for (int i = 0; i < 4; i++)
            {
                part = new Part(3766, "ShapedYtrackRubber", this, 1, 0.0m);
                part.PartGroupType = "TopTrackY-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //BrzJambOXDoor -->>
            for (int i = 0; i < 4; i++)
            {
                part = new Part(4363, "BrzJambOXDoor", this, 1, m_subAssemblyHieght - calkGap);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            // BrzFaciaHeadOXOXO ^^
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4364, "BrzFaciaHeadOXOXO", this, 1, m_subAssemblyWidth - jambDimW - jambInset);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Pile_LS_Seals

            //////////////////////////////////////////////////////////////////////////////

            //Pile_LS_Seals -->>
            for (int i = 0; i < 4; i++)
            {
                part = new Part(4384, "Pile_LS_Seals", this, 1, m_subAssemblyHieght - calkGap);
                part.PartGroupType = "Pile_LS_Seals-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            // Pile_T_Slot ^^
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4384, "Pile_LS_Seals", this, 1, m_subAssemblyWidth - jambDimW - jambInset);
                part.PartGroupType = "Pile_LS_Seals-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE_Head

            //////////////////////////////////////////////////////////////////////////////

            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOvrLpX2 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                case 4:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX3 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }


                default:
                    break;
                }
            }

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;

            // HDPE_Head ^^
            part = new Part(3442, "HDPE_Head", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 5.75m;

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4400, "HDPE_Jamb", this, 1, m_subAssemblyHieght - calkGap - reducHDPE);
                part.PartGroupType = "HDPE_Head-Parts";
                part.PartLabel     = "";
                part.PartThick     = 0.75m;
                part.PartWidth     = 2.875m;

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #19
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth + stileOverLap - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region TopTrackUni

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrackX
            part = new Part(3406, "TopTrackX", this, 1, (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + doorGap);
            part.PartGroupType = "TopTrackUni";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // TopTrackO
            part = new Part(3406, "TopTrackO", this, 1, (trackHelper.DoorPanelWidth) + doorGap + yTrAccess - yTrack);
            part.PartGroupType = "TopTrackUni";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //ShapedYtrackRubber -->>
            part = new Part(3766, "ShapedYtrackRubber", this, 2, 0.0m);
            part.PartGroupType = "TopTrackUni";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////


            #endregion

            #region Over_Travel

            //////////////////////////////////////////////////////////////////////////////

            //OTB_XO_XP
            part = new Part(5272, "OTB_XO_XP", this, 1, 0.0m);
            part.PartGroupType = "Over_Travel";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //OTB_Filler
            part = new Part(5271, "OTB_Filler", this, 1, 0.0m);
            part.PartGroupType = "Over_Travel";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //AlumJambXDoor -->>
            part = new Part(4357, "AlumJambXDoor", this, 2, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //AlumJambIntODoor -->>
            part = new Part(4357, "AlumJambIntODoor", this, 1, m_subAssemblyHieght - reducHDPE - calkGap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //AlumJambExtODoor -->>
            part = new Part(4357, "AlumJambExtODoor", this, 1, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHeadInt ^^
            part = new Part(4362, "SplitHeadInt", this, 1, m_subAssemblyWidth - jambDimW - jambInset);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHeadExtX ^^
            part = new Part(4362, "SplitHeadExtX", this, 1, m_subAssemblyWidth - jambDimW + doorGap - jambInset);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHeadExtO ^^
            part = new Part(4362, "SplitHeadExtO", this, 1, (trackHelper.DoorPanelWidth) - jambInset - FaciaCap11);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHdCap9 ^^
            part = new Part(4362, "SplitHdCap9", this, 1, FaciaCap9);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHdCap10 ^^
            part = new Part(4362, "SplitHdCap10", this, 1, FaciaCap10);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHdCap11 ^^
            part = new Part(4362, "SplitHdCap11", this, 1, FaciaCap11);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // AccessPlate ^^
            part = new Part(3438, "AccessPlate", this, 1, FaciaCap11);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Pile_LS_Seals

            //////////////////////////////////////////////////////////////////////////////

            //QuadSeal
            part = new Part(4910, "QuadSeal", this, 1, 0.0m);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //Pile_LS_Seals -->>
            part = new Part(3979, "Pile_LS_Seals", this, 2, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //Pile_LS_Seals -->>
            part = new Part(3979, "Pile_LS_Seals", this, 1, m_subAssemblyHieght - reducHDPE - calkGap);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //Pile_LS_Seals -->>
            part = new Part(3979, "Pile_LS_Seals", this, 1, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////


            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 1, m_subAssemblyWidth - jambDimW - jambInset);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 1, m_subAssemblyWidth - jambDimW + doorGap - jambInset);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 1, (trackHelper.DoorPanelWidth) - AglORed - jambInset);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 1, FaciaCap9);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 1, FaciaCap10);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_LS_Seals ^^
            part = new Part(3979, "Pile_LS_Seals", this, 1, FaciaCap11);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE_Head

            //////////////////////////////////////////////////////////////////////////////

            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOvrLpX2 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                case 4:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX3 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }


                default:
                    break;
                }
            }

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;


            // HDPE_Head ^^
            part = new Part(3442, "HDPE_Head", this, 1, (trackHelper.DoorPanelWidth * panelCount) - stileOverLap + headHDPEadd2X);
            part.PartGroupType = "HDPE_Head";
            part.PartLabel     = notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 5.75m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////


            // HDPE_Fixed_O_Mount_Block
            part = new Part(5670, "HDPE_MountBlock", this, 3, 0.0m);
            part.PartGroupType = "HDPE_Head";
            part.PartLabel     = "DoorEdge";
            part.PartThick     = 1.1642m;
            part.PartWidth     = 1.5312m;
            part.PartLength    = 4.0m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            part = new Part(4400, "HDPE_Jamb", this, 2, m_subAssemblyHieght - calkGap - reducHDPE);
            part.PartGroupType = "HDPE_Head";
            part.PartLabel     = "";
            part.PartThick     = 0.75m;
            part.PartWidth     = 2.875m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            part = new Part(4400, "HDPE_Jamb", this, 2, m_subAssemblyHieght - calkGap - reducHDPE);
            part.PartGroupType = "HDPE_Head";
            part.PartLabel     = "";
            part.PartThick     = 0.75m;
            part.PartWidth     = 2.75m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #20
0
        void CommandInfo(byte UCID)
        {
            #region ' Command '
            const string TimeFormat = "HH:mm";//ex: 23/03/2003


            #region ' info '
            if (_connections[UCID].DisplaysOpen == false && _connections[UCID].inInfo == false)
            {
                _connections[UCID].serverTime = true;

                // DARK
                insim.Send(new IS_BTN
                {
                    UCID    = UCID,
                    ReqI    = 30,
                    ClickID = 30,
                    BStyle  = ButtonStyles.ISB_DARK,
                    H       = 44,
                    W       = 56,
                    T       = 40,
                    L       = 71,
                });

                // Server info label
                insim.Send(new IS_BTN
                {
                    Text    = "^2-- Server Information --",
                    UCID    = UCID,
                    ReqI    = 31,
                    ClickID = 31,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_C4,
                    H       = 7,
                    W       = 45,
                    T       = 43,
                    L       = 73,
                });

                // track1
                insim.Send(new IS_BTN
                {
                    Text    = "^3Track:",
                    UCID    = UCID,
                    ReqI    = 32,
                    ClickID = 32,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_LEFT,
                    H       = 4,
                    W       = 18,
                    T       = 51,
                    L       = 73,
                });
                insim.Send(new IS_BTN
                {
                    Text    = "^7" + TrackHelper.GetFullTrackName(TrackName) + " ^7(" + TrackName + ")",
                    UCID    = UCID,
                    ReqI    = 33,
                    ClickID = 33,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_C4,
                    H       = 4,
                    W       = 27,
                    T       = 51,
                    L       = 91,
                });


                // players connected
                insim.Send(new IS_BTN
                {
                    Text    = "^3Players connected:",
                    UCID    = UCID,
                    ReqI    = 34,
                    ClickID = 34,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_LEFT,
                    H       = 4,
                    W       = 18,
                    T       = 55,
                    L       = 73,
                });

                int conns = (_connections.Count - 1);
                insim.Send(new IS_BTN
                {
                    Text    = "^7" + conns,
                    UCID    = UCID,
                    ReqI    = 35,
                    ClickID = 35,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_C4,
                    H       = 4,
                    W       = 27,
                    T       = 55,
                    L       = 91,
                });

                // players spectating
                insim.Send(new IS_BTN
                {
                    Text    = "^3Players spectating:",
                    UCID    = UCID,
                    ReqI    = 36,
                    ClickID = 36,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_LEFT,
                    H       = 4,
                    W       = 18,
                    T       = 59,
                    L       = 73,
                });
                insim.Send(new IS_BTN
                {
                    Text    = "^7" + (conns - _players.Count),
                    UCID    = UCID,
                    ReqI    = 37,
                    ClickID = 37,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_C4,
                    H       = 4,
                    W       = 27,
                    T       = 59,
                    L       = 91,
                });

                // players on the track
                insim.Send(new IS_BTN
                {
                    Text    = "^3Players on track:",
                    UCID    = UCID,
                    ReqI    = 38,
                    ClickID = 38,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_LEFT,
                    H       = 4,
                    W       = 18,
                    T       = 63,
                    L       = 73,
                });
                insim.Send(new IS_BTN
                {
                    Text    = "^7" + _players.Count,
                    UCID    = UCID,
                    ReqI    = 39,
                    ClickID = 39,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_C4,
                    H       = 4,
                    W       = 27,
                    T       = 63,
                    L       = 91,
                });

                // users registered
                insim.Send(new IS_BTN
                {
                    Text    = "^3Registered users:",
                    UCID    = UCID,
                    ReqI    = 40,
                    ClickID = 40,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_LEFT,
                    H       = 4,
                    W       = 18,
                    T       = 67,
                    L       = 73,
                });
                insim.Send(new IS_BTN
                {
                    Text    = "^7" + dbCount.ToString(),
                    UCID    = UCID,
                    ReqI    = 41,
                    ClickID = 41,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_C4,
                    H       = 4,
                    W       = 27,
                    T       = 67,
                    L       = 91,
                });

                // banned users
                insim.Send(new IS_BTN
                {
                    Text    = "^3Permabanned users:",
                    UCID    = UCID,
                    ReqI    = 42,
                    ClickID = 42,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_LEFT,
                    H       = 4,
                    W       = 18,
                    T       = 71,
                    L       = 73,
                });
                insim.Send(new IS_BTN
                {
                    Text    = "^7" + dbBans.ToString(),
                    UCID    = UCID,
                    ReqI    = 43,
                    ClickID = 43,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_C4,
                    H       = 4,
                    W       = 27,
                    T       = 71,
                    L       = 91,
                });

                // banned users
                insim.Send(new IS_BTN
                {
                    Text    = "^3Server time:",
                    UCID    = UCID,
                    ReqI    = 45,
                    ClickID = 45,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_LEFT,
                    H       = 4,
                    W       = 18,
                    T       = 76,
                    L       = 73,
                });
                insim.Send(new IS_BTN
                {
                    Text    = "^7" + DateTime.UtcNow.ToString(TimeFormat),
                    UCID    = UCID,
                    ReqI    = 46,
                    ClickID = 46,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_C4,
                    H       = 4,
                    W       = 27,
                    T       = 76,
                    L       = 91,
                });

                // Close window
                insim.Send(new IS_BTN
                {
                    Text    = "^7Close",
                    UCID    = UCID,
                    ReqI    = 44,
                    ClickID = 44,
                    BStyle  = ButtonStyles.ISB_LIGHT | ButtonStyles.ISB_CLICK,
                    H       = 4,
                    W       = 7,
                    T       = 44,
                    L       = 119,
                });

                _connections[UCID].DisplaysOpen = true;
                _connections[UCID].inInfo       = true;
            }
            else
            {
                insim.Send(255, DisplaysOpenedMsg);
            }
            #endregion


            #endregion
        }
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region TopTrackY

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////


            //TopTrackYXX
            part = new Part(4447, "TopTrackYXXX", this, 1, (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX2 - jambInset + endCap + doorGap + pockYtrackAdd);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);



            //TopTrackYX
            part = new Part(4447, "TopTrackYXX", this, 1, (trackHelper.DoorPanelWidth * 3.0m) - stileOverLap - jambInset + endCap + yTrAccess + pockYtrackAdd);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);



            // TopTrackYOX
            part = new Part(4447, "TopTrackYX", this, 1, (trackHelper.DoorPanelWidth * 2.0m) - jambInset + endCap + yTrAccess + pockYtrackAdd);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //ShapedYtrackRubber -->>
            for (int i = 0; i < 2; i++)
            {
                part = new Part(3766, "ShapedYtrackRubber", this, 1, 0.0m);
                part.PartGroupType = "TopTrackY-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////


            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //Jamb_4363_XDoor -->>
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4363, "Jamb_4363_XDoor", this, 1, m_subAssemblyHieght - calkGap);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            //Jamb_4363_Poc -->>
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4363, "Jamb_4363_Poc", this, 1, m_subAssemblyHieght - calkGap);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }


            ////////////////////////////////////////////////////////////////////////////////

            // FaciaHd_4364_Int ^^
            part = new Part(4364, "FaciaHd_4364_Int", this, 1, m_subAssemblyWidth - jambDimW
                            - jambDimW);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // FaciaHd_4364_ExtXXX ^^
            part = new Part(4364, "FaciaHd_4364_ExtXXX", this, 1, (trackHelper.DoorPanelWidth) - jambInset - spltHdRed);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            ////////////////////////////////////////////////////////////////////////////////

            // FaciaHd_4364_ExtXX ^^
            part = new Part(4364, "FaciaHd_4364_ExtXX", this, 1, (trackHelper.DoorPanelWidth) - faceMidoor);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // FaciaHd_4364_ExtX ^^
            part = new Part(4364, "FaciaHd_4364_ExtX", this, 1, (trackHelper.DoorPanelWidth) + faceXdoor - jambInset);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            ////////////////////////////////////////////////////////////////////////////////

            // Facia_4364_CapX ^^
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4364, "Facia_4364_CapX", this, 1, faceCapX);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // Facia_4364_Access ^^
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4364, "Facia_4364_Access", this, 1, facEndAcc);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            // Facia_4364_EndCap ^^
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4364, "Facia_4364_EndCap", this, 1, facEndCap);
                part.PartGroupType = "Frame-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region QuadSeal

            //////////////////////////////////////////////////////////////////////////////

            //QuadSeal
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4910, "QuadSeal", this, 1, 0.0m);
                part.PartGroupType = "QuadSeal";
                part.PartLabel     = "";

                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE_Head



            //////////////////////////////////////////////////////////////////////////////


            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth * 2.0m + pockYtrackAdd - jambInset + endCap + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOverLap - jambInset + pockYtrackAdd + endCap + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX2 - jambInset + pockYtrackAdd + endCap + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                default:
                    break;
                }
            }

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;


            // HDPEHead ^^
            part = new Part(3454, "HDPE_Head", this, 1, (trackHelper.DoorPanelWidth * 4.0m) + (doorGap + jambCvrBrz + endCap) - (stileOvrLpX2 - jambInset));
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "Notch @ " + notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 6.125m;

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////
            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            for (int i = 0; i < 1; i++)
            {
                part = new Part(4400, "HDPE_Jamb", this, 1, m_subAssemblyHieght - calkGap - reducHDPE);
                part.PartGroupType = "HDPE_Head-Parts";
                part.PartLabel     = "";
                part.PartThick     = 0.75m;


                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////



            #endregion
        }
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();

            #region TopTrackY

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //Top22mmTrackXX
            part = new Part(4447, "Top22mmTrackXX", this, 1, (trackHelper.DoorPanelWidth * 3.0m - stileOvrLpX2) + doorGap2X);
            part.PartGroupType = "TopTrackY";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // Top22mmTrackO
            part = new Part(4447, "Top22mmTrackO", this, 1, trackHelper.DoorPanelWidth - stileCut2X + 2.0m * yTrackAdd);
            part.PartGroupType = "TopTrackY";
            part.PartLabel     = "";
            m_parts.Add(part);

            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            //ShapedYtrackRubber -->>
            part = new Part(3766, "ShapedYtrackRubber", this, 4, 0.0m);
            part.PartGroupType = "TopTrackY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Over_Travel

            //////////////////////////////////////////////////////////////////////////////

            //OTB_XO_XP
            part = new Part(6876, "OTB_XO_XP", this, 1, 0.0m);
            part.PartGroupType = "Over_Travel";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //OTB_OX_PX
            part = new Part(6878, "OTB_OX_PX", this, 1, 0.0m);
            part.PartGroupType = "Over_Travel";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //OTB_Filler
            for (int i = 0; i < 2; i++)
            {
                part = new Part(6877, "OTB_Filler", this, 1, 0.0m);
                part.PartGroupType = "Over_Travel";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            // SplitJambXOXDoor -->>
            part = new Part(6870, "SplitJambXOXDoor", this, 4, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHeadInt ^^
            part = new Part(4362, "SplitHeadInt", this, 1, m_subAssemblyWidth - 2.0m * jambDimW);
            part.PartGroupType = "Frame";
            part.PartLabel     = "Cut_1.875";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHeadExtX ^^
            part = new Part(4362, "SplitHeadExtX", this, 2, trackHelper.DoorPanelWidth - stileCut - jambInset - splitHdOTB_Red);
            part.PartGroupType = "Frame";
            part.PartLabel     = "Cut_1.875";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SplitHeadExtO ^^
            part = new Part(4362, "SplitHeadExtO", this, 1, trackHelper.DoorPanelWidth - 2.0m * stileCut + 2.0m * splitHdOTB_add);
            part.PartGroupType = "Frame";
            part.PartLabel     = "Cut_1.875";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Pile_Seals

            //////////////////////////////////////////////////////////////////////////////

            //QuadSeal
            part = new Part(4910, "QuadSeal", this, 2, 0.0m);
            part.PartGroupType = "Pile_LS_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //Pile_Seals -->>
            part = new Part(3979, "Pile_Seals", this, 4, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Pile_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // Pile_Seals ^^
            part = new Part(3979, "Pile_Seals", this, 1, trackHelper.DoorPanelWidth - 2.0m * stileCut + 2.0m * splitHdOTB_add);
            part.PartGroupType = "Pile_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // Pile_Seals ^^
            part = new Part(3979, "Pile_Seals", this, 2, trackHelper.DoorPanelWidth - stileCut + 2.0m * splitHdOTB_Red);
            part.PartGroupType = "Pile_Seals";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE_Head

            //////////////////////////////////////////////////////////////////////////////

            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOvrLpX2 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                case 4:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX3 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }


                default:
                    break;
                }
            }

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;

            // HDPE_Head ^^
            part = new Part(3442, "HDPE_Head", this, 1, (trackHelper.DoorPanelWidth * panelCount - stileOvrLpX2 + headHDPEaddX2));
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 5.75m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            part = new Part(4400, "HDPE_Jamb", this, 2, m_subAssemblyHieght - calkGap - reducHDPE);
            part.PartGroupType = "HDPE_Head-Parts";
            part.PartLabel     = "";
            part.PartThick     = 0.75m;
            part.PartWidth     = 2.875m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #23
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();


            #region TopTrackUni

            ///////////////////////////////////////////////////////////////////////////////////////////////

            //TopTrackYX
            part = new Part(3406, "TopTrackUni", this, 1, (trackHelper.DoorPanelWidth * 2.0m) + yTrackAdd);
            part.PartGroupType = "TopTrackY";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PocketGuides

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // PocketGuide
            part = new Part(5151, "WedgePocketGuide", this, 4, 0.0m);
            part.PartGroupType = "PocketGuides";
            part.PartLabel     = "";
            part.PartThick     = 0.405m;
            part.PartWidth     = 1.4715m;
            part.PartLength    = 5.0m;
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Frame

            ///////////////////////////////////////////////////////////////////////////////////////////////

            //BzJambExt -->>
            part = new Part(4363, "BzJambExt", this, 2, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            //AlumJambInt -->>
            part = new Part(4357, "AlumJambInt", this, 2, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // BrzSpltHead ^^
            part = new Part(4364, "BrzSpltHead", this, 1, m_subAssemblyWidth - jambDimW * 2.0m);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // AlumSpltHead ^^
            part = new Part(4362, "AlumSpltHead", this, 1, m_subAssemblyWidth - jambDimW * 2.0m);
            part.PartGroupType = "Frame";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region WoodClad

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // WoodCladLSJamb -->>
            part = new Part(4339, "WoodCladLSJamb", this, 2, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "WoodClad";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // WoodCladLSHead ^^
            part = new Part(4339, "WoodCladLSHead", this, 1, m_subAssemblyWidth - cladRed2X);
            part.PartGroupType = "WoodClad";
            part.PartLabel     = "";
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PocketGuides

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // PocketGuides
            part = new Part(5151, "PocketGuides", this, 2, 0.0m);
            part.PartGroupType = "PocketGuides";
            part.PartLabel     = "";
            part.PartThick     = 0.405m;
            part.PartWidth     = 1.4715m;
            part.PartLength    = 5.0m;
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE

            ///////////////////////////////////////////////////////////////////////////////////////////////

            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
            string  notchHDPE = "notch head @ " + HDPEnotch.ToString();

            // HDPE_Head_PX ^^
            part = new Part(4400, "HDPE_Head_PX", this, 1, trackHelper.DoorPanelWidth * 2.0m + headHDPEadd + headHDPEpocAdd);
            part.PartGroupType = "HDPE";
            part.PartLabel     = notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 2.875m;
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            part = new Part(4400, "HDPE_Jamb", this, 1, m_subAssemblyHieght - calkGap - reducHDPE);
            part.PartGroupType = "HDPE";
            part.PartLabel     = "";
            part.PartThick     = 0.75m;
            part.PartWidth     = 2.875m;
            m_parts.Add(part);

            ///////////////////////////////////////////////////////////////////////////////////////////////

            #endregion
        }
 public DuplicatesDetectorFacade()
 {
     cts = new CancellationTokenSource();
     duplicatesDetectorService = ServiceContainer.Kernel.Get <DuplicatesDetectorService>();
     trackHelper = ServiceContainer.Kernel.Get <TrackHelper>();
 }
Beispiel #25
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();

            #region TopTrackY

            //////////////////////////////////////////////////////////////////////////////

            //TopTrackYXXX
            part = new Part(3406, "TopTrackYXXX", this, 1, (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX3 + doorGap);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //TopTrackYXX
            part = new Part(3406, "TopTrackYXX", this, 1, (trackHelper.DoorPanelWidth * 3.0m) - stileOvrLpX2 + yTrAccess - yTrack);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //TopTrackYX
            part = new Part(3406, "TopTrackYX", this, 1, (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + yTrAccess - yTrack);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // TopTrackYOX
            part = new Part(3406, "TopTrackYO", this, 1, (trackHelper.DoorPanelWidth) + doorGap + yTrAccess - yTrack);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //ShapedYtrackRubber -->>
            part = new Part(3766, "ShapedYtrackRubber", this, 6, 0.0m);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //BzJambXDoor -->>
            part = new Part(4363, "BzJambXDoor", this, 2, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //BzJambIntODoor -->>
            part = new Part(4363, "BzJambIntODoor", this, 1, m_subAssemblyHieght - reducHDPE - calkGap);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //BzJambExtODoor -->>
            part = new Part(4363, "BzJambExtODoor", this, 1, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHeadInt ^^
            part = new Part(4364, "SplitHeadInt", this, 1, m_subAssemblyWidth - jambDimW - jambToFW);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHeadExtXXX ^^
            part = new Part(4364, "SplitHeadExtXXX", this, 1, (trackHelper.DoorPanelWidth) - spltHdRed);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHeadExtXX ^^
            part = new Part(4364, "SplitHeadExtXX", this, 1, (trackHelper.DoorPanelWidth) - spltMdidRed);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHeadExtX ^^
            part = new Part(4364, "SplitHeadExtX", this, 1, (trackHelper.DoorPanelWidth) - spltMdidRed);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHeadExtO ^^
            part = new Part(4364, "SplitHeadExtO", this, 1, (trackHelper.DoorPanelWidth) - jambInset + yTrAccess);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHdCap9 ^^
            part = new Part(4364, "SplitHdCap9", this, 3, FaciaCap9);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHdCap10 ^^
            part = new Part(4364, "SplitHdCap10", this, 3, FaciaCap10);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SplitHdCap11 ^^
            part = new Part(4364, "SplitHdCap11", this, 3, FaciaCap11);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // AccessPlate ^^
            part = new Part(4421, "AccessPlate", this, 3, FaciaCap11);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region QuadSeal

            //////////////////////////////////////////////////////////////////////////////

            //QuadSeal
            part = new Part(4910, "QuadSeal", this, 3, 0.0m);
            part.PartGroupType = "QuadSeal";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE_Head

            //////////////////////////////////////////////////////////////////////////////

            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOvrLpX2 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                case 4:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX3 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }


                default:
                    break;
                }
            }

            //////////////////////////////////////////////////////////////////////////////

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;


            // HDPEHead ^^
            part = new Part(3454, "HDPE_Head", this, 1, (trackHelper.DoorPanelWidth * panelCount) - stileOvrLpX3 + headHDPEadd2X);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "Notch @ " + notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 11.5m;

            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Fixed_O_Mount_Block
            part = new Part(5670, "HDPE_MountBlock", this, 3, 0.0m);
            part.PartGroupType = "HDPE_DoorEdge-Parts";
            part.PartLabel     = "DoorEdge";
            part.PartThick     = 1.1642m;
            part.PartWidth     = 1.5312m;
            part.PartLength    = 4.0m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            part = new Part(4400, "HDPE_Jamb", this, 2, m_subAssemblyHieght - calkGap - reducHDPE);
            part.PartGroupType = "HDPE_Head-Parts";
            part.PartLabel     = "";
            part.PartThick     = 0.75m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #26
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth, 0);

            BridgeGenie bridgeGenie = new BridgeGenie(2.25m);

            Component Component;
            string    Componentleader = this.Parent.UnitID + "." + this.CreateID.ToString();


            #region BladeSS

            //BladeO

            Component = new Component(3444, "BladeO", this, 1, trackHelper.DoorPanelWidth + bladeAdd);
            Component.ComponentGroupType = "BladeSS-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            // BladeOX

            Component = new Component(3444, "BladeOX", this, 1, (trackHelper.DoorPanelWidth * 2) - stileWidth + jambFinwall);
            Component.ComponentGroupType = "BladeSS-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            // BladeOXX

            Component = new Component(3444, "BladeOXX", this, 1, (trackHelper.DoorPanelWidth * 3) - (stileWidth * 2) + jambFinwall);
            Component.ComponentGroupType = "BladeSS-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            // BladeOXXX

            Component = new Component(3444, "BladeOXXXO", this, 1, (trackHelper.DoorPanelWidth * 5) + adjOdoor + bladeAdd * 2 - stileWidth * 4 + jambFinwall + bladeAdd);
            Component.ComponentGroupType = "BladeSS-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);

            #endregion

            #region PerfecTack

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_O
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4424, "PerfecT_O", this, 1, trackHelper.DoorPanelWidth + bladeAdd);
                Component.ComponentGroupType = "PerfecTack-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_OX
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4424, "PerfecT_OX", this, 1, (trackHelper.DoorPanelWidth * 2) - stileWidth + jambFinwall);
                Component.ComponentGroupType = "PerfecTack-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_OXX
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4424, "PerfecT_OXX", this, 1, (trackHelper.DoorPanelWidth * 3) - (stileWidth * 2) + jambFinwall);
                Component.ComponentGroupType = "PerfecTack-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_OXXX
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4424, "PerfecT_OXXX", this, 1, (trackHelper.DoorPanelWidth * 4) - stileWidth * 3 + bladeAdd);
                Component.ComponentGroupType = "PerfecTack-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_OXXXX
            for (int i = 0; i < 2; i++)
            {
                Component = new Component(4424, "PerfecT_OXXXX", this, 1, (trackHelper.DoorPanelWidth * 5) + adjOdoor + bladeAdd * 2 - stileWidth * 4 + jambFinwall + bladeAdd);
                Component.ComponentGroupType = "PerfecTack-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Drains

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //Drains

            for (int i = 0; i < trackHelper.DrainCount; i++)
            {
                Component = new Component(4465, "Drains", this, 1, 0.0m);
                Component.ComponentGroupType = "Drains-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region BridgeAssemble

            //BridgeAssemble

            for (int i = 1; i < panelCount + 1; i++)
            {
                //Bridge

                if (i > 1)
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        Component = new Component(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";
                        m_Components.Add(Component);
                        waste += 0.125m;
                    }
                    Component = new Component(3445, "Cutting Waste", this, 1, waste);
                    m_Components.Add(Component);
                }

                else
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        Component = new Component(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";

                        m_Components.Add(Component);
                        waste += 0.125m;
                    }
                    Component = new Component(3445, "Cutting Waste", this, 1, waste);
                    m_Components.Add(Component);
                }

                //BridgeClips

                if (i > 1)
                {
                    Component = new Component(5432, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }

                else
                {
                    Component = new Component(5432, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }


                //TrackBolts

                if (i > 1)
                {
                    Component = new Component(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }
                else
                {
                    Component = new Component(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }



                //TrackClips

                Component = new Component(3447, "TrackClips", this, trackHelper.BridgeCount * i * 2, 0.0m);
                Component.ComponentGroupType = "BridgeAssemble-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);



                Component = new Component(3449, "CapScrews", this, trackHelper.BridgeCount * i * 2, 0.0m);
                Component.ComponentGroupType = "BridgeAssemble-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);



                //FlangeNuts

                if (i > 1)
                {
                    Component = new Component(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }
                else
                {
                    Component = new Component(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }


                //NutPlateConnector

                if (i > 1 && i != panelCount)
                {
                    // your the second door but NOT second to last
                    if (i >= 2 && i < (panelCount - 1))
                    {
                        Component = new Component(5433, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";

                        m_Components.Add(Component);
                    }
                    // your the second door but ARE second to last
                    else
                    {
                        Component = new Component(5433, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";

                        m_Components.Add(Component);
                    }
                }
            }

            #endregion
        }
Beispiel #27
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth, 0);

            BridgeGenie bridgeGenie = new BridgeGenie(2.25m);

            Component Component;
            string    Componentleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region BladeSS


            //BladeO
            Component = new Component(3444, "BladeO", this, 1, (trackHelper.DoorPanelWidth + bladeAdd));
            Component.ComponentGroupType = "BladeSS-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);



            // BladeOX
            Component = new Component(3444, "BladeOX", this, 1, (trackHelper.DoorPanelWidth * 2.0m - stileOverLap + bladeAdd * 2.0m));

            Component.ComponentGroupType = "BladeSS-Components";
            Component.ComponentLabel     = "";

            m_Components.Add(Component);



            #endregion

            #region BridgeAssemble

            //BridgeAssemble

            //////////////////////////////////////////////////////////////////////////////////////////////////
            //////////////////////////////////////////////////////////////////////////////////////////////////

            for (int i = 1; i < panelCount + 1; i++)
            {
                //Bridge

                if (i > 1)
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        Component = new Component(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";
                        m_Components.Add(Component);
                        waste += 0.125m;
                    }
                    Component = new Component(3445, "Cutting Waste", this, 1, waste);
                    m_Components.Add(Component);
                }

                else
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        Component = new Component(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";

                        m_Components.Add(Component);
                        waste += 0.125m;
                    }
                    Component = new Component(3445, "Cutting Waste", this, 1, waste);
                    m_Components.Add(Component);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////
                //////////////////////////////////////////////////////////////////////////////////////////////////



                //BridgeClips

                if (i > 1)
                {
                    Component = new Component(3446, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }

                else
                {
                    Component = new Component(3446, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }


                ///////////////////////////////////////////////////////////////////////////////////
                //TrackBolts

                //if (i > 1)
                //{
                //Component = new Component(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                //Component.ComponentGroupType = "BridgeAssemble-Components";
                //Component.ComponentLabel = "";

                //m_Components.Add(Component);
                //}
                //else
                //{
                //Component = new Component(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                //Component.ComponentGroupType = "BridgeAssemble-Components";
                //Component.ComponentLabel = "";

                //m_Components.Add(Component);
                //}
                ///////////////////////////////////////////////////////////////////////////////////


                //TrackClips

                Component = new Component(3447, "TrackClips", this, trackHelper.BridgeCount * i * 2, 0.0m);
                Component.ComponentGroupType = "BridgeAssemble-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);



                Component = new Component(3449, "CapScrews", this, trackHelper.BridgeCount * i * 2, 0.0m);
                Component.ComponentGroupType = "BridgeAssemble-Components";
                Component.ComponentLabel     = "";

                m_Components.Add(Component);



                //FlangeNuts

                if (i > 1)
                {
                    Component = new Component(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }
                else
                {
                    Component = new Component(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    Component.ComponentGroupType = "BridgeAssemble-Components";
                    Component.ComponentLabel     = "";

                    m_Components.Add(Component);
                }


                //NutPlateConnector

                if (i > 1 && i != panelCount)
                {
                    // your the second door but NOT second to last
                    if (i >= 2 && i < (panelCount - 1))
                    {
                        Component = new Component(3448, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";

                        m_Components.Add(Component);
                    }
                    // your the second door but ARE second to last
                    else
                    {
                        Component = new Component(3448, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        Component.ComponentGroupType = "BridgeAssemble-Components";
                        Component.ComponentLabel     = "";

                        m_Components.Add(Component);
                    }
                }
            }

            #endregion
        }
Beispiel #28
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth - jambReduce2X - doorGap2X, 0);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();

            #region TopTrackUni

            //////////////////////////////////////////////////////////////////////////////

            //TopTrackXOX__
            part = new Part(3406, "TopTrackXOX__", this, 1, (trackHelper.DoorPanelWidth) * 3.0m - stileOvrLpX2 + doorGap + uTrackTopAdd);
            part.PartGroupType = "TopTrackUni-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //TopTrack_O___
            part = new Part(3406, "TopTrack_O___", this, 1, (trackHelper.DoorPanelWidth) + 2.0m * uTrackTopAdd);
            part.PartGroupType = "TopTrackUni-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //TopTrack___XO
            part = new Part(3406, "TopTrack___XO", this, 1, (trackHelper.DoorPanelWidth) * 2.0m - stileOverLap + calkGap + uTrackTopAdd);
            part.PartGroupType = "TopTrackUni-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //TopTrack____O
            part = new Part(3406, "TopTrack____O", this, 1, (trackHelper.DoorPanelWidth) + doorGap + uTrackTopAdd);
            part.PartGroupType = "TopTrackUni-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //ShapedYtrackRubber -->>
            part = new Part(3766, "ShapedYtrackRubber", this, 2, 0.0m);
            part.PartGroupType = "TopTrackY-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Over_Travel

            //////////////////////////////////////////////////////////////////////////////

            //OTB_X___O
            part = new Part(5425, "OTB_X___O", this, 3, 0.0m);
            part.PartGroupType = "Over_Travel";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //OTB_O___X
            part = new Part(5426, "OTB_O___X", this, 2, 0.0m);
            part.PartGroupType = "Over_Travel";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //OTB_Filler
            part = new Part(5271, "OTB_Filler", this, 5, 0.0m);
            part.PartGroupType = "Over_Travel";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Frame

            //////////////////////////////////////////////////////////////////////////////

            //BrzJambX___O -->>
            part = new Part(4363, "BrzJambX___O", this, 3, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            //BrzJamb____O -->>
            part = new Part(4363, "BrzJamb____O", this, 1, m_subAssemblyHieght - reducHDPE - calkGap);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // SpltHdExt1X____ ^^
            part = new Part(4364, "SpltHdExt1X____", this, 1, (trackHelper.DoorPanelWidth) - jambInset - spltHdRed1);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SpltHdExt2_O___ ^^
            part = new Part(4364, "SpltHdExt2_O___", this, 1, (trackHelper.DoorPanelWidth) + 2.0m * overTravBxADD);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SpltHdExt3__X__ ^^
            part = new Part(4364, "SpltHdExt3__X__", this, 1, (trackHelper.DoorPanelWidth) - spltHdRed1 + overTravBxADD);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SpltHdExt4___X_ ^^
            part = new Part(4364, "SpltHdExt4___X_", this, 1, (trackHelper.DoorPanelWidth) - 2.0m * spltHdRed1);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SpltHdExt5____O ^^
            part = new Part(4364, "SpltHdExt5____O", this, 1, (trackHelper.DoorPanelWidth) + overTravBxADD - jambInset);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SpltHdIntXOX__ ^^
            part = new Part(4364, "SpltHdIntXOX__", this, 1, (trackHelper.DoorPanelWidth) * 3.0m - (jambInset + stileOvrLpX2 + spltHdRed1));
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            // SpltHdInt___XO ^^
            part = new Part(4364, "SpltHdInt___XO", this, 1, (trackHelper.DoorPanelWidth) * 2.0m + overTravBxADD - stileOverLap + spltHdAdd1);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region QuadSeal

            //////////////////////////////////////////////////////////////////////////////

            //QuadSeal
            part = new Part(4910, "QuadSeal", this, 4, 0.0m);
            part.PartGroupType = "QuadSeal";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion

            #region Pile_LS_Seals

            //////////////////////////////////////////////////////////////////////////////

            //Pile_LS_Seals -->>
            part = new Part(3979, "Pile_LS_Seals", this, 4, m_subAssemblyHieght - calkGap);
            part.PartGroupType = "Pile_LS_Seals-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // Pile_T_Slot ^^
            part = new Part(3979, "Pile_LS_Seals", this, 2, m_subAssemblyWidth);
            part.PartGroupType = "Pile_LS_Seals-Parts";
            part.PartLabel     = "";
            m_parts.Add(part);

            ////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region HDPE_Head

            //////////////////////////////////////////////////////////////////////////////

            string    notchHDPE = string.Empty;
            decimal[] temp      = new decimal[panelCount + 1];

            for (int i = 1; i < panelCount; i++)
            {
                switch (i)
                {
                case 1:
                {
                    temp[1]   = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;
                    notchHDPE = temp[1].ToString() + ",";
                    break;
                }

                case 2:
                {
                    temp[2]    = (trackHelper.DoorPanelWidth * 2.0m) - stileOverLap + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[2].ToString() + ",";
                    break;
                }

                case 3:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 3.0m) - stileOvrLpX2 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }

                case 4:
                {
                    temp[3]    = (trackHelper.DoorPanelWidth * 4.0m) - stileOvrLpX3 + headHDPEadd + notchHDPEadd;
                    notchHDPE += temp[3].ToString() + ",";
                    break;
                }


                default:
                    break;
                }
            }

            ////////////////////////////////////////////////////////////////////////////////

            // notchHDPE
            decimal HDPEnotch = trackHelper.DoorPanelWidth + headHDPEadd + notchHDPEadd;

            // HDPE_Head ^^
            part = new Part(3442, "HDPE_Head", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 5.75m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Fixed_O_Mount_Block
            part = new Part(5670, "HDPE_MountBlock", this, 6, 0.0m);
            part.PartGroupType = "HDPE_DoorEdge-Parts";
            part.PartLabel     = "DoorEdge";
            part.PartThick     = 1.1642m;
            part.PartWidth     = 1.5312m;
            part.PartLength    = 4.0m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_Jamb
            part = new Part(4400, "HDPE_Jamb", this, 2, m_subAssemblyHieght - calkGap - reducHDPE);
            part.PartGroupType = "HDPE_Head-Parts";
            part.PartLabel     = "";
            part.PartThick     = 0.75m;
            part.PartWidth     = 2.875m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            // HDPE_HeadFiller ^^
            part = new Part(4859, "HDPE_HeadFiller", this, 1, 0.0m);
            part.PartGroupType = "Frame-Parts";
            part.PartLabel     = notchHDPE;
            part.PartThick     = 0.75m;
            part.PartWidth     = 2.75m;
            part.PartLength    = 1.6875m;
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////

            #endregion
        }
Beispiel #29
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth, 0);

            BridgeGenie bridgeGenie = new BridgeGenie(2.25m);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();

            //////////////////////////////////////////////

            #region BladeSS

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //BladePX
            for (int i = 0; i < 2; i++)
            {
                part = new Part(3444, "BladePX", this, 1, (trackHelper.DoorPanelWidth * 2) - pocketInset);
                part.PartGroupType = "BladeSS";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // BladePXX
            for (int i = 0; i < 2; i++)
            {
                part = new Part(3444, "BladePXX", this, 1, (trackHelper.DoorPanelWidth * 3) - stileWidth - pocketInset);
                part.PartGroupType = "BladeSS";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // BladePXXX
            for (int i = 0; i < 2; i++)
            {
                part = new Part(3444, "BladePXXX", this, 1, (trackHelper.DoorPanelWidth * 4) - (2 * stileWidth) - pocketInset + bladeAdd);
                part.PartGroupType = "BladeSS";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PerfecTack

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_PX
            for (int i = 0; i < 4; i++)
            {
                part = new Part(4424, "PerfecT_PX", this, 1, (trackHelper.DoorPanelWidth * 2) - pocketInset);
                part.PartGroupType = "PerfecTack";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_PXX
            for (int i = 0; i < 4; i++)
            {
                part = new Part(4424, "PerfecT_PXX", this, 1, (trackHelper.DoorPanelWidth * 3) - stileWidth - pocketInset);
                part.PartGroupType = "PerfecTack";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_PXXX
            for (int i = 0; i < 4; i++)
            {
                part = new Part(4424, "PerfecT_PXXX", this, 1, (trackHelper.DoorPanelWidth * 4) - (2 * stileWidth) - pocketInset + bladeAdd);
                part.PartGroupType = "PerfecTack";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            //////////////////////////////////////////////

            #region Cross_Gutter

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // Cross_Gutter
            for (int i = 0; i < panelCount + 1.0m; i++)
            {
                part = new Part(5579, "Cross_Gutter", this, 1, 2.83m);
                part.PartGroupType = "Cross_Gutter";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PVC_Pocket_Drain

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // PVC_Pocket_Drain
            for (int i = 0; i < 2; i++)
            {
                part = new Part(5628, "PVC_Pocket_Drain", this, 1, 0.0m);
                part.PartGroupType = "PVC_Pocket_Drain";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PVC_Drains

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // PVC_90°Drain
            for (int i = 0; i < panelCount + 1; i++)
            {
                part = new Part(5634, "PVC_90°Drain", this, 1, 0.0m);
                part.PartGroupType = "PVC_Drains";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // PVC_StrightDrain
            for (int i = 0; i < panelCount + 3; i++)
            {
                part = new Part(5633, "PVC_StrightDrain", this, 1, 0.0m);
                part.PartGroupType = "PVC_Drains";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region SS_Drains

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //SS_Drains
            for (int i = 0; i < trackHelper.DrainCount * 2.0m; i++)
            {
                part = new Part(4465, "SS_Drains", this, 1, 0.0m);
                part.PartGroupType = "SS_Drains";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            //////////////////////////////////////////////

            #region BridgeAssemble

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //BridgeAssemble
            for (int i = 1; i < panelCount + 1; i++)
            {
                //Bridge
                if (i > 1)
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                        waste += 0.125m;
                    }
                    part = new Part(3445, "Cutting Waste", this, 1, waste);
                    m_parts.Add(part);
                }

                else
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";

                        m_parts.Add(part);
                        waste += 0.125m;
                    }
                    part = new Part(3445, "Cutting Waste", this, 1, waste);
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //BridgeClips
                if (i > 1)
                {
                    part = new Part(5432, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }

                else
                {
                    part = new Part(5432, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackBolts
                //if (i > 1)
                //{
                //part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                //part.PartGroupType = "BridgeAssemble";
                //part.PartLabel = "";

                //m_parts.Add(part);
                //}
                //else
                //{
                //part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                //part.PartGroupType = "BridgeAssemble";
                //part.PartLabel = "";

                //m_parts.Add(part);
                //}

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackClips
                part = new Part(3447, "TrackClips", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                // CapScrews
                part = new Part(3449, "CapScrews", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //FlangeNuts
                if (i > 1)
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //NutPlateConnector
                if (i > 1 && i != panelCount)
                {
                    // your the second door but NOT second to last
                    if (i >= 2 && i < (panelCount - 1))
                    {
                        part = new Part(5433, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                    }
                    // your the second door but ARE second to last
                    else
                    {
                        part = new Part(5433, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                    }

                    //////////////////////////////////////////////////////////////////////////////////////////////////
                }
            }

            #endregion

            #region PocBrdgAssY

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PocBrdgAssY

            //Bridge
            decimal CutWaste = decimal.Zero;
            for (int j = 1; j < trackHelper.BridgeCount + 1; j++)
            {
                part = new Part(3445, "BridgePoc", this, 1, bridgeGenie.result[panelCount - 1]);
                part.PartGroupType = "PocBrdgAssY-";
                part.PartLabel     = "";
                m_parts.Add(part);
                CutWaste += 0.125m;
            }
            part = new Part(3445, "CutPocWaste", this, 1, CutWaste);
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //BridgeClips
            part = new Part(5432, "BridgeClipsPoc", this, trackHelper.BridgeCount * 2, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //TrackClips
            part = new Part(3447, "TrackClipsPoc", this, trackHelper.BridgeCount * panelCount * 2, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //NutPlateConnector

            // your the second door but NOT second to last
            part = new Part(5433, "NutPlateConPoc", this, (trackHelper.BridgeCount) * (panelCount - 2), 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //CapScrews
            part = new Part(3449, "CapScrewsPoc", this, trackHelper.BridgeCount * panelCount * 2, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //FlangeNuts
            part = new Part(3450, "FlangeNutsPoc", this, trackHelper.BridgeCount * 4, 0.0m);
            part.PartGroupType = "PocBrdgAssY";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //TrackBolts
            //part = new Part(3451, "TrackBoltsPoc", this, trackHelper.BridgeCount * 2, 0.0m);
            //part.PartGroupType = "PocBrdgAssY";
            //part.PartLabel = "";
            //m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            //////////////////////////////////////////////
        }
Beispiel #30
0
        //Bill of Material
        public override void Build()
        {
            TrackHelper trackHelper = new TrackHelper(panelCount, m_subAssemblyWidth, 0);

            BridgeGenie bridgeGenie = new BridgeGenie(2.25m);

            Part   part;
            string partleader = this.Parent.UnitID + "." + this.CreateID.ToString();

            //////////////////////////////////////////////

            #region BladeSS

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // BladeFT_<X_<X
            part = new Part(3444, "BladeFT_<X_<X", this, 1, trackHelper.DoorPanelWidth * 4.0m - stileWidthX3 + bladeAddX2);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //BladeO_____
            part = new Part(3444, "BladeO_____", this, 1, trackHelper.DoorPanelWidth - stileCut + bladeAdd);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //Blade___O__
            part = new Part(3444, "Blade___O__", this, 1, trackHelper.DoorPanelWidth - stileCutX2);
            part.PartGroupType = "BladeSS";
            part.PartLabel     = "";
            m_parts.Add(part);

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PerfecTack

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT_<X_<X
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4424, "PerfecT_<X_<X", this, 1, trackHelper.DoorPanelWidth * 4.0m - stileWidthX3 + bladeAddX2);
                part.PartGroupType = "PerfecTack";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecTO_____
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4424, "PerfecTO_____", this, 1, trackHelper.DoorPanelWidth - stileCut + bladeAdd);
                part.PartGroupType = "PerfecTack";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //PerfecT___O__
            for (int i = 0; i < 2; i++)
            {
                part = new Part(4424, "PerfecT___O__", this, 1, trackHelper.DoorPanelWidth - stileCutX2);
                part.PartGroupType = "PerfecTack";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // End_Cap_Gutter
            for (int i = 0; i < panelCount + 2.0m; i++)
            {
                part = new Part(5593, "End_Cap_Gutter", this, 1, 1.25m);
                part.PartGroupType = "PerfecTack";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            //////////////////////////////////////////////

            #region Cross_Gutter

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // Cross_Gutter
            for (int i = 0; i < panelCount + 1.0m; i++)
            {
                part = new Part(5579, "Cross_Gutter", this, 1, 2.83m);
                part.PartGroupType = "Cross_Gutter";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region PVC_Drains

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // PVC_90°Drain
            for (int i = 0; i < panelCount - 1.0m; i++)
            {
                part = new Part(5634, "PVC_90°Drain", this, 1, 0.0m);
                part.PartGroupType = "PVC_Drains";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            // PVC_StrightDrain
            for (int i = 0; i < panelCount + 1.0m; i++)
            {
                part = new Part(5633, "PVC_StrightDrain", this, 1, 0.0m);
                part.PartGroupType = "PVC_Drains";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            #region SS_Drains

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //SS_Drains
            for (int i = 0; i < trackHelper.DrainCount; i++)
            {
                part = new Part(4465, "SS_Drains", this, 1, 0.0m);
                part.PartGroupType = "SS_Drains";
                part.PartLabel     = "";
                m_parts.Add(part);
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////

            #endregion

            //////////////////////////////////////////////

            #region BridgeAssemble

            //////////////////////////////////////////////////////////////////////////////////////////////////

            //Bridge
            for (int i = 1; i < panelCount + 1; i++)
            {
                if (i > 1)
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 2; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble-Parts";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                        waste += 0.125m;
                    }
                    part = new Part(3445, "Cutting Waste", this, 2, waste);
                    m_parts.Add(part);
                }
                else
                {
                    decimal waste = decimal.Zero;
                    for (int j = 1; j < trackHelper.BridgeCount + 2; j++)
                    {
                        part = new Part(3445, "Bridge", this, 1, bridgeGenie.result[i - 1]);
                        part.PartGroupType = "BridgeAssemble-Parts";
                        part.PartLabel     = "";

                        m_parts.Add(part);
                        waste += 0.125m;
                    }
                    part = new Part(3445, "Cutting Waste", this, 1, waste);
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //BridgeClips
                if (i > 1)
                {
                    part = new Part(5432, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble-Parts";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(5432, "BridgeClips", this, trackHelper.BridgeCount * 2, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackBolts
                //if (i > 1)
                //{
                //part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                //part.PartGroupType = "BridgeAssemble";
                //part.PartLabel = "";

                //m_parts.Add(part);
                //}
                //else
                //{
                //part = new Part(3451, "TrackBolts", this, trackHelper.BridgeCount * 2, 0.0m);
                //part.PartGroupType = "BridgeAssemble";
                //part.PartLabel = "";

                //m_parts.Add(part);
                //}

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //TrackClips
                part = new Part(3447, "TrackClips", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                part = new Part(3449, "CapScrews", this, trackHelper.BridgeCount * i * 2, 0.0m);
                part.PartGroupType = "BridgeAssemble";
                part.PartLabel     = "";
                m_parts.Add(part);

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //FlangeNuts
                if (i > 1)
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }
                else
                {
                    part = new Part(3450, "FlangeNuts", this, trackHelper.BridgeCount * 4, 0.0m);
                    part.PartGroupType = "BridgeAssemble";
                    part.PartLabel     = "";
                    m_parts.Add(part);
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////

                //NutPlateConnector
                if (i > 1 && i != panelCount)
                {
                    // your the second door but NOT second to last
                    if (i >= 2 && i < (panelCount - 1))
                    {
                        part = new Part(5433, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                    }
                    // your the second door but ARE second to last
                    else
                    {
                        part = new Part(5433, "NutPlateConnector", this, trackHelper.BridgeCount * (panelCount - 2), 0.0m);
                        part.PartGroupType = "BridgeAssemble";
                        part.PartLabel     = "";
                        m_parts.Add(part);
                    }
                }

                //////////////////////////////////////////////////////////////////////////////////////////////////
            }

            #endregion

            //////////////////////////////////////////////
        }