public void CheckGeometry()
 {
     //CaveTools.CheckLines(subFrame.Select(x => x.frameLine).ToList());
     CaveTools.CheckLines(internalStub.Select(x => x.Stub).ToList());
     CaveTools.CheckLines(meshExtraSupport.Stubs.Select(x => x).ToList());
     //CaveTools.CheckLines(cornerStub.Select(x => x.Stub).ToList());
     //CaveTools.CheckLines(DummyGSALines);
     CaveTools.CheckLines(frameLinesX);
     CaveTools.CheckLines(frameLinesY);
     RhinoDoc.ActiveDoc.Objects.AddMesh(GSAmesh);
 }
Exemple #2
0
        public void ConnectToEnvelope(List <PanelFrame> panelFrames)
        {
            for (int i = 0; i < panelFrames.Count; i++)
            {
                if (i < panelFrames.Count - 1)
                {
                    if (!panelFrames[i + 1].FailedFrame)
                    {
                        Line b1 = SetHangerAssembly(panelFrames[i].cornerStub[2].stubEnd, panelFrames[i + 1].cornerStub[0].stubEnd, ref hangerA);
                        UpdateStubs(panelFrames[i].cornerStub[2], panelFrames[i + 1].cornerStub[0], b1);

                        Line b2 = SetHangerAssembly(panelFrames[i].cornerStub[3].stubEnd, panelFrames[i + 1].cornerStub[1].stubEnd, ref hangerB);
                        UpdateStubs(panelFrames[i].cornerStub[3], panelFrames[i + 1].cornerStub[1], b2);
                    }
                    if (i > 0)
                    {
                        if (panelFrames[i - 1].FailedFrame)
                        {
                            SimpleHanger(panelFrames[i].cornerStub[0].stubEnd, ref hangerA);
                            SimpleHanger(panelFrames[i].cornerStub[1].stubEnd, ref hangerB);
                        }
                    }
                }
                if (i == 0)
                {
                    SimpleHanger(panelFrames[i].cornerStub[0].stubEnd, ref hangerA);
                    SimpleHanger(panelFrames[i].cornerStub[1].stubEnd, ref hangerB);
                }
                if (i == panelFrames.Count - 1)
                {
                    SimpleHanger(panelFrames[i].cornerStub[2].stubEnd, ref hangerA);
                    SimpleHanger(panelFrames[i].cornerStub[3].stubEnd, ref hangerB);
                }
                CaveTools.CheckLines(panelFrames[i].cornerStub.Select(x => x.Stub).ToList());
            }
            CaveTools.CheckLines(hangerA);
            CaveTools.CheckLines(hangerB);
            CaveTools.CheckLines(connection);
            if (orientation != Orientation.Ceiling)
            {
                HangerBrace(hangerA);
                HangerBrace(hangerB);
            }
            CaveTools.CheckLines(brace);
        }