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); }
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); }