|
36 | 36 | if ismembertol(mw,mr,NameValueArgs.Tol) && ismembertol(cr,cw,NameValueArgs.Tol) |
37 | 37 | [wallFracVal,~] = testParallelLineOverlapLength(wallVert,roomVert,NameValueArgs.Tol); |
38 | 38 | if wallFracVal > 0 |
39 | | - tblDataWindowVent.("Window (0-1)")(idVec(j,1),1) = tblDataWindowVent.("Window (0-1)")(idVec(j,1),1) + NameValueArgs.WallData.("window"+k).openingFrac; |
| 39 | + numWinToCheck = length(fieldnames(NameValueArgs.WallData.("window"+k).derivedFrom.wallOpening)); |
| 40 | + for m = 1:numWinToCheck |
| 41 | + wallName = NameValueArgs.WallData.("window"+k).derivedFrom.wallOpening.("geometry"+m); |
| 42 | + unitBIMmodel = string(unit(wallWithUnits)); |
| 43 | + winCoordmeters = value(simscape.Value([wallName(1,1).Coordinate;wallName(1,2).Coordinate;wallName(1,3).Coordinate;wallName(1,4).Coordinate],unitBIMmodel),"m"); |
| 44 | + heightVec = unique(winCoordmeters(:,3)); |
| 45 | + if length(heightVec) > 1 |
| 46 | + wallH = abs(heightVec(1,1)-heightVec(2,1)); |
| 47 | + winPts12 = winCoordmeters(winCoordmeters(:,3)==heightVec(1,1),:); |
| 48 | + winPts34 = winCoordmeters(winCoordmeters(:,3)==heightVec(2,1),:); |
| 49 | + [winValidityChk1,~] = testParallelLineOverlapLength(winPts12,roomVert,NameValueArgs.Tol); |
| 50 | + [winValidityChk2,~] = testParallelLineOverlapLength(winPts34,roomVert,NameValueArgs.Tol); |
| 51 | + if winValidityChk1 > 0 || winValidityChk2 > 0 |
| 52 | + winArea = sqrt((winPts12(1,1)-winPts12(2,1))^2+(winPts12(1,2)-winPts12(2,2))^2)*sqrt((winPts34(1,1)-winPts34(2,1))^2+(winPts34(1,2)-winPts34(2,2))^2); |
| 53 | + wallArea = sqrt((roomVert(1,1)-roomVert(2,1))^2+(roomVert(1,2)-roomVert(2,2))^2)*wallH; |
| 54 | + tblDataWindowVent.("Window (0-1)")(idVec(j,1),1) = min(1,tblDataWindowVent.("Window (0-1)")(idVec(j,1),1)+winArea/wallArea); |
| 55 | + end |
| 56 | + end |
| 57 | + end |
| 58 | + % tblDataWindowVent.("Window (0-1)")(idVec(j,1),1) = tblDataWindowVent.("Window (0-1)")(idVec(j,1),1) + NameValueArgs.WallData.("window"+k).openingFrac; |
40 | 59 | end |
41 | 60 | end |
42 | 61 | end |
|
0 commit comments