vue3-tunnel-lining-plugins 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +130 -0
- package/dl200plugin.common.js +49 -0
- package/dl200plugin.common.js.map +1 -0
- package/dl200plugin.js +10766 -0
- package/dl200plugin.js.map +1 -0
- package/dl200plugin.umd.js +50 -0
- package/dl200plugin.umd.js.map +1 -0
- package/dl5plugin.common.js +49 -0
- package/dl5plugin.common.js.map +1 -0
- package/dl5plugin.js +10769 -0
- package/dl5plugin.js.map +1 -0
- package/dl5plugin.umd.js +50 -0
- package/dl5plugin.umd.js.map +1 -0
- package/index-dl200.css +1 -0
- package/index-dl5.css +1 -0
- package/index-sl160.css +1 -0
- package/index.js +13 -0
- package/package.json +58 -0
- package/sl160plugin.common.js +49 -0
- package/sl160plugin.common.js.map +1 -0
- package/sl160plugin.js +10766 -0
- package/sl160plugin.js.map +1 -0
- package/sl160plugin.umd.js +50 -0
- package/sl160plugin.umd.js.map +1 -0
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
(function(a,Pt){typeof exports=="object"&&typeof module!="undefined"?module.exports=Pt(require("mxcad"),require("mxdraw"),require("vue")):typeof define=="function"&&define.amd?define(["mxcad","mxdraw","vue"],Pt):(a=typeof globalThis!="undefined"?globalThis:a||self,a.Vue3TunnelLiningDL200=Pt(a.MxCAD,a.Mx,a.Vue))})(this,function(a,Pt,St){"use strict";var Ns=Object.defineProperty;var At=Math.pow,vs=(a,Pt,St)=>Pt in a?Ns(a,Pt,{enumerable:!0,configurable:!0,writable:!0,value:St}):a[Pt]=St;var be=(a,Pt,St)=>(vs(a,typeof Pt!="symbol"?Pt+"":Pt,St),St);var Pe=(a,Pt,St)=>new Promise((ue,Tt)=>{var Ut=Lt=>{try{Nt(St.next(Lt))}catch(r){Tt(r)}},$t=Lt=>{try{Nt(St.throw(Lt))}catch(r){Tt(r)}},Nt=Lt=>Lt.done?ue(Lt.value):Promise.resolve(Lt.value).then(Ut,$t);Nt((St=St.apply(a,Pt)).next())});var ue=document.createElement("style");ue.textContent=`#myCanvas[data-v-419cf772]{width:100%;height:100%;display:block;border:1px solid #ccc}
|
|
2
|
+
`,document.head.appendChild(ue);class Tt{static CreateDimStyle(i){try{const n=a.MxCpp.getCurrentMxCAD();let e=n.getDatabase().getDimStyleTable();if(!e.get(i).isValid()){let o=new a.McDbDimStyleTableRecord;o.name=i,o.setDimVarInt(77,1),o.setDimVarInt(271,3),o.setDimVarDouble(78,8),o.setDimVarDouble(41,.18),o.setDimVarDouble(141,.09),o.setDimVarDouble(40,200),e.add(o),n.drawDimStyle="1-100",n.updateDisplay()}}catch(n){return new a.McObjectId}}static CreateTextStyle(i){new a.McObjectId;const n=a.MxCpp.getCurrentMxCAD(),e=n.getDatabase().getTextStyleTable();if(!e.get(i).isValid()){let o=new a.McDbTextStyleTableRecord;o.fileName="SD_NUM_NEW.shx",o.bigFontFileName="Sd_hz.shx",o.textSize=3.5,o.name=i,o.xScale=.7,e.add(o).isValid()&&(console.log("add ok"),n.drawTextStyle="SDHZ")}}static CreateTableStyle(i){let n=new a.McObjectId;try{return n}catch(e){return console.error("创建表格样式失败!","提示"),n}}static CreateComplexLinetype(i){}static fixStyle(){Tt.CreateTextStyle("SDHZ"),Tt.CreateDimStyle("1-100"),Tt.CreateTableStyle("TunnelTable")}}class Ut{}class $t{}class Nt{}class Lt{}class r{static subtractPoints(i,n){return new a.McGePoint3d(n.x-i.x,n.y-i.y,n.z-i.z)}static angleBetween(i,n){const e=i.x*n.x+i.y*n.y+i.z*n.z,t=Math.sqrt(At(i.x,2)+At(i.y,2)+At(i.z,2)),o=Math.sqrt(At(n.x,2)+At(n.y,2)+At(n.z,2));return Math.acos(e/(t*o))}static distance(i,n){const e=i.x-n.x,t=i.y-n.y,o=i.z-n.z;return Math.sqrt(e*e+t*t+o*o)}static Ang2Rad(i){return i*Math.PI/180}static PointOnline(i,n,e){const t=[];return t[0]=i.x+(n.x-i.x)*e,t[1]=i.y+(n.y-i.y)*e,t[2]=i.z+(n.z-i.x)*e,new a.McGePoint3d(t[0],t[1],t[2])}static GetDipAngle(i,n){return Math.atan2(n.y-i.y,n.x-i.x)}static Point2dTo3d(i){return new a.McGePoint3d(i.x,i.y,0)}static Point3dTo2d(i){return new a.McGePoint3d(i.x,i.y,0)}static Point3dTo2Z(i){return new a.McGePoint3d(i.x,i.y,0)}static PolarPoint(i,n,e){return new a.McGePoint3d(i.x+e*Math.cos(n),i.y+e*Math.sin(n),i.z)}static PolarPointByVector(i,n,e){if(n.isZeroLength())return a.McGePoint3d.kOrigin;const t=i.x+e*n.x/n.length(),o=i.y+e*n.y/n.length(),s=i.z;return new a.McGePoint3d(t,o,s)}static MidPoint(i,n){return new a.McGePoint3d((i.x+n.x)/2,(i.y+n.y)/2,(i.z+n.z)/2)}static AddCircle(i,n,e){try{const t=new a.McDbCircle(i,n);return e&&(t.colorIndex=e),a.MxCpp.getCurrentMxCAD().drawEntity(t)}catch(t){return console.error("Failed to add circle:",t),new a.McObjectId}}static AddCircleWith3Point(i,n,e){try{const t=Math.PI,o=new a.McGeVector3d(n.x-i.x,n.y-i.y,n.z-i.z),s=new a.McGeVector3d(e.x-i.x,e.y-i.y,e.z-i.z),d=o.angleTo1(s);if(d===0||d===t)return new a.McObjectId;const c=(n.y-i.y)/(n.x-i.x),l=(e.y-n.y)/(e.x-n.x),_=(c*l*(i.y-e.y)+l*(i.x+n.x)-c*(n.x+e.x))/(2*(l-c)),h=-1/c*(_-(i.x+n.x)/2)+(i.y+n.y)/2,P=new a.McGePoint3d(_,h,0),u=Math.sqrt(Math.pow(i.x-_,2)+Math.pow(i.y-h,2)),p=new a.McDbCircle(P,u);return a.MxCpp.getCurrentMxCAD().drawEntity(p)}catch(t){return console.error("Failed to add circle from three points:",t),new a.McObjectId}}static drawDashedLine(i,n,e,t,o){const s=new a.McGeVector3d(n.x-i.x,n.y-i.y,n.z-i.z),d=Math.sqrt(At(s.x,2)+At(s.y,2)+At(s.z,2)),c=new a.McGeVector3d(s.x/d,s.y/d,s.z/d),l=n.sub(i).length();let _=0,h=new a.McObjectId;for(;_<l;){const P=new a.McGePoint3d(i.x+c.x*_,i.y+c.y*_,i.z+c.z*_),u=Math.min(_+e,l),p=new a.McGePoint3d(i.x+c.x*u,i.y+c.y*u,i.z+c.z*u),M=new a.McDbLine(P,p);M.colorIndex=o;const g=a.MxCpp.getCurrentMxCAD().drawEntity(M);h||(h=g),_=u+t}return a.MxCpp.getCurrentMxCAD().regen(),h}static addLine(i,n,e,t,o){try{const d=["DASHED","Dashed","HIDDEN","Hidden","ISO02W100","ACAD_ISO02W100"].includes(t),c=new a.McDbLine(i,n);c.colorIndex=e,c.linetype=t,c.linetypeScale=o;const l=a.MxCpp.getCurrentMxCAD().drawEntity(c);return a.MxCpp.getCurrentMxCAD().regen(),console.log("Solid line created with ID:",l.toString()),l}catch(s){throw console.error("创建直线失败:",s),s}}static addLine2P(i,n){try{const e=new a.McDbLine;return e.startPoint=i,e.endPoint=n,new a.McObjectId,a.MxCpp.getCurrentMxCAD().drawEntity(e)}catch(e){return console.error("❌ 添加直线失败:",e),new a.McObjectId}}static addLine3P(i,n,e){try{const t=new a.McDbLine;return t.startPoint=i,t.endPoint=n,t.colorIndex=e,a.MxCpp.getCurrentMxCAD().drawEntity(t)}catch(t){return console.error("❌ 添加带颜色的直线失败:",t),new a.McObjectId}}static addXLineByVector(i,n){const e=new a.McDbLine;return e.startPoint=new a.McGePoint3d(i.x-n.x*1e6,i.y-n.y*1e6,i.z-n.z*1e6),e.endPoint=new a.McGePoint3d(i.x+n.x*1e6,i.y+n.y*1e6,i.z+n.z*1e6),r.AppendEntity(e)}static AddXLineBy2Point(i,n){try{const e=new a.McGeVector3d(n.x-i.x,n.y-i.y,n.z-i.z),t=new a.McDbLine;return t.startPoint=new a.McGePoint3d(i.x-e.x*1e3,i.y-e.y*1e3,i.z-e.z*1e3),t.endPoint=new a.McGePoint3d(i.x+e.x*1e3,i.y+e.y*1e3,i.z+e.z*1e3),a.MxCpp.getCurrentMxCAD().drawEntity(t)}catch(e){return console.error("Failed to add xline from two points:",e),new a.McObjectId}}static addPline4P(i,n,e,t){try{const o=new a.McDbPolyline;for(let s=0;s<i.length;s++)o.addVertexAt(new a.McGePoint3d(i[s].x,i[s].y,0),0,n,n),t&&o.setBulgeAt(s,i[s].z);return o.colorIndex=e,a.MxCpp.getCurrentMxCAD().drawEntity(o)}catch(o){return console.error("AddPline 出错:",o),new a.McObjectId}}static addPline5P(i,n,e,t,o){try{const s=new a.McDbPolyline;for(let c=0;c<i.length;c++){const l=i[c],_=new a.McGePoint3d(l.x,l.y,0),h=t?l.z:0;s.addVertexAt(_,h,n,n)}return s.colorIndex=e,s.isClosed=o,a.MxCpp.getCurrentMxCAD().drawEntity(s)}catch(s){return console.error("❌ 添加多段线失败:",s),new a.McObjectId}}static addPline(i,n,e,t,o,s){try{if(!i||i.length<2)throw new Error("至少需要2个点才能创建多段线");const d=new a.McDbPolyline;for(let l=0;l<i.length;l++){const _=i[l];d.addVertexAt(new a.McGePoint3d(_.x,_.y,0),0,n,e),o&&_.z!==void 0&&_.z!==0&&d.setBulgeAt(l,_.z)}return d.colorIndex=t,d.isClosed=s,a.MxCpp.getCurrentMxCAD().drawEntity(d)}catch(d){return console.error("创建多段线失败:",d),new a.McObjectId}}static addPline7P(i,n,e,t,o,s,d){try{const c=new a.McDbPolyline;for(let _=0;_<i.length;_++)c.addVertexAt(new a.McGePoint3d(i[_].x,i[_].y,0),0,n,n),s&&c.setBulgeAt(_,i[_].z);return c.linetypeScale=o,a.MxCpp.getCurrentMxCAD().drawEntity(c)}catch(c){return console.error("Error creating polyline:",c),new a.McObjectId}}static addPline1(i,n,e,t="",o=1,s,d){try{if(!i||i.length<2)throw new Error("至少需要2个点才能创建多段线");const c=new a.McDbPolyline;for(let _=0;_<i.length;_++){const h=i[_];c.addVertexAt(new a.McGePoint3d(h.x,h.y,0),0,n,n),s&&h.z!==void 0&&h.z!==0&&c.setBulgeAt(_,h.z)}return t&&(c.linetype=t,c.linetypeScale=o),c.colorIndex=e,c.isClosed=d,a.MxCpp.getCurrentMxCAD().drawEntity(c)}catch(c){return console.error("创建多段线失败:",c),new a.McObjectId}}static Add3dPoly(i){try{const n=new a.McDbPolyline;return i.forEach((e,t)=>{n.setPointAt(t,e)}),a.MxCpp.getCurrentMxCAD().drawEntity(n)}catch(n){return console.error("Failed to add 3d polyline:",n),new a.McObjectId}}static addMtext(i,n,e,t,o){try{const s=new a.McDbMText;return s.location=i,s.contents=n,s.textHeight=e,s.width=o,s.lineSpacingFactor!==void 0&&(s.lineSpacingFactor=t),a.MxCpp.getCurrentMxCAD().drawEntity(s)}catch(s){return console.error("❌ 添加多行文字失败:",s),new a.McObjectId}}static AddMtext(i,n,e,t){try{const o=new a.McDbMText;return o.location=i,n=n.replace(/\n/g,"\\P"),o.contents=n,o.textHeight=e,o.width=t,a.MxCpp.getCurrentMxCAD().drawEntity(o)}catch(o){return new a.McObjectId}}static AddMtext5P(i,n,e,t,o){try{const s=new a.McDbMText;return s.location=i,s.contents=n,s.textHeight=e,s.linetypeScale=t,s.width=o,a.MxCpp.getCurrentMxCAD().drawEntity(s)}catch(s){return new a.McObjectId}}static addText6P(i,n,e,t,o,s){try{const d=e*1.2,c=d*Math.cos(s+Math.PI/2),l=d*Math.sin(s+Math.PI/2),_=new a.McGePoint3d(i.x+c,i.y+l,i.z),h=new a.McDbText;return h.textString=n,h.height=e,h.oblique=t,h.rotation=s,h.widthFactor=o,h.verticalMode=a.McDb.TextVertMode.kTextTop,h.alignmentPoint=_,a.MxCpp.getCurrentMxCAD().drawEntity(h)}catch(d){return console.error("❌ 添加单行文字失败",d),new a.McObjectId}}static addText(i,n,e,t,o,s,d,c){try{const l=new a.McDbText;return l.alignmentPoint=l.position=i,l.textString=n,l.height=e,l.oblique=t,l.rotation=s,l.widthFactor=o,l.horizontalMode=d,l.verticalMode=c,a.MxCpp.getCurrentMxCAD().drawEntity(l)}catch(l){return console.error("Text drawing failed:",l),new a.McObjectId}}static addText4(i,n,e,t){try{const o=new a.McDbText;return o.alignmentPoint=o.position=i,o.horizontalMode=a.McDb.TextHorzMode.kTextLeft,o.textString=n,o.height=e,o.oblique=t,a.MxCpp.getCurrentMxCAD().drawEntity(o)}catch(o){return new a.McObjectId}}static addText5(i,n,e,t,o){try{const s=new a.McDbText;return s.alignmentPoint=s.position=i,s.horizontalMode=a.McDb.TextHorzMode.kTextLeft,s.textString=n,s.height=e,s.oblique=t,s.widthFactor=o,a.MxCpp.getCurrentMxCAD().drawEntity(s)}catch(s){return new a.McObjectId}}static addText6(i,n,e,t,o,s){try{const d=new a.McDbText;return d.alignmentPoint=d.position=i,d.horizontalMode=a.McDb.TextHorzMode.kTextLeft,d.textString=n,d.height=e,d.oblique=t,d.widthFactor=o,d.rotation=s,a.MxCpp.getCurrentMxCAD().drawEntity(d)}catch(d){return console.error("创建文字失败:",d),new a.McObjectId}}static addText7P(i,n,e,t,o,s,d){try{const c=new a.McDbText;return c.alignmentPoint=c.position=i,c.horizontalMode=a.McDb.TextHorzMode.kTextLeft,c.textString=n,c.height=e,c.oblique=t,c.rotation=s,c.colorIndex=d,c.widthFactor=o,a.MxCpp.getCurrentMxCAD().drawEntity(c)}catch(c){return console.error("创建带属性文字失败:",c),new a.McObjectId}}static AddText(i,n,e,t){try{const o=new a.McDbText;return o.position=i,o.textString=n,o.height=e,o.oblique=t,a.MxCpp.getCurrentMxCAD().drawEntity(o)}catch(o){return console.error("Failed to add text:",o),new a.McObjectId}}static addLeader2(i,n){const e=a.MxCpp.getCurrentMxCAD(),t=[];if(i.length<2)return t;for(let g=0;g<i.length-1;g++){const C=new a.McDbLine(i[g],i[g+1]),y=e.drawEntity(C);y&&t.push(y)}const o=i[i.length-2],s=i[i.length-1],d=1.5,c=25*Math.PI/180,l=s.x-o.x,_=s.y-o.y,h=Math.atan2(_,l),P=h-c,u=h+c,p=new a.McGePoint3d(s.x-d*Math.cos(P),s.y-d*Math.sin(P),s.z),M=new a.McGePoint3d(s.x-d*Math.cos(u),s.y-d*Math.sin(u),s.z);return e.drawColor=new a.McCmColor(0,0,0),e.pathMoveTo(s.x,s.y),e.pathLineTo(p.x,p.y),e.pathLineTo(M.x,M.y),e.pathLineTo(s.x,s.y),e.drawPathToHatch(1),t}static AddLeader2P(i,n,e=2,t=Math.PI/6){try{const o=i.x-n.x,s=i.y-n.y,d=Math.sqrt(o*o+s*s),c=2*e*Math.tan(t/2);if(d<1e-4)throw new Error("箭头起点和终点不能重合");const l=o/d,_=s/d,h=i.x-l*e,P=i.y-_*e,u=new a.McGePoint3d(h,P,0),p=new a.McDbPolyline;return p.addVertexAt(i,0,0,c),p.addVertexAt(u,0,0,0),p.addVertexAt(n,0,0,0),a.MxCpp.getCurrentMxCAD().drawEntity(p)}catch(o){throw console.error("绘制箭头失败:",o),o}}static addLeader3WithoutCircle(i,n,e){const t=a.MxCpp.getCurrentMxCAD(),o=[],s=1,d=25*Math.PI/180,c=n.x-i.x,l=n.y-i.y,_=Math.atan2(l,c),h=_-d,P=_+d,u=new a.McGePoint3d(i.x+s*Math.cos(h),i.y+s*Math.sin(h),0),p=new a.McGePoint3d(i.x+s*Math.cos(P),i.y+s*Math.sin(P),0);t.pathMoveTo(i.x,i.y),t.pathLineTo(u.x,u.y),t.pathLineTo(p.x,p.y),t.pathLineTo(i.x,i.y),t.drawColor=new a.McCmColor(0,0,0),t.drawPathToHatch(1);const M=new a.McDbLine;M.startPoint=i,M.endPoint=n;const g=t.drawEntity(M);return g&&o.push(g),o}static AddLeader(i,n){const e=new a.McDbPolyline;for(let t=0;t<i.length;t++)e.addVertexAt(i[t]);return r.AppendEntity(e)}static AddBrokenLeader(i,n,e,t){if(i.isEqualTo(n))return new a.McObjectId;{const o=[],s=r.GetDipAngle(i,n),d=r.PointOnline(i,n,.8);return o.push(i),o.push(r.PolarPoint(d,Math.PI+s,1.875*e)),o.push(r.PolarPoint(r.PolarPoint(d,Math.PI+s,.625*e),s+Math.PI/2,1.875*e)),o.push(r.PolarPoint(r.PolarPoint(d,s,.625*e),s-Math.PI/2,1.875*e)),o.push(r.PolarPoint(d,s,1.875*e)),o.push(n),r.AddLeader(o,!1)}}static addDimRotated5(i,n,e,t,o){const s=a.MxCpp.getCurrentMxCAD(),d=new a.McGePoint3d(n.x,n.y),c=new a.McGePoint3d(e.x,e.y),l=c.x-d.x,_=c.y-d.y,h=Math.sqrt(l*l+_*_),P=Math.atan2(_,l),u=Math.abs(h*Math.cos(P-i))*o,p=Math.round(u).toString();if(p==="0")return new a.McObjectId;const M=a.MxCpp.getCurrentMxCAD().addDimStyle("SlashArrowStyleFixed","40,1.0,41,1.0,140,2.5,141,0.5,142,1.0,147,1.0","77,1,271,3,272,3,173,0,172,1,174,1,75,0,76,0,287,4,279,1","",""),g=new a.McDbRotatedDimension;return g.rotation=i,g.xLine1Point=n,g.xLine2Point=e,g.dimLinePoint=t,g.dimensionText=p,g.trueColor=new a.McCmColor(255,255,255),g.dimensionStyle=M,s.drawEntity(g)}static addDimRotated6(i,n,e,t,o,s){const d=new a.McGePoint3d(n.x,n.y),c=new a.McGePoint3d(e.x,e.y),l=c.x-d.x,_=c.y-d.y,h=Math.sqrt(l*l+_*_),P=Math.atan2(_,l),u=Math.abs(h*Math.cos(P-i))*s,p=Math.round(u).toString(),M=a.MxCpp.getCurrentMxCAD().addDimStyle("SlashArrowStyleFixed","40,1.0,41,1.0,140,2.5,141,0.5,142,1.0,147,1.0","77,1,271,3,272,3,173,0,172,1,174,1,75,0,76,0,287,4,279,1","",""),g=new a.McDbRotatedDimension;g.rotation=i,g.xLine1Point=n,g.xLine2Point=e,g.dimLinePoint=t,g.dimensionText=p,g.trueColor=new a.McCmColor(255,255,255),g.dimensionStyle=M;let C;if(o)C=o;else{const y=3*s,F=-Math.sin(i),I=Math.cos(i);C=new a.McGePoint3d(t.x+F*y,t.y+I*y)}return g.textPosition=C,a.MxCpp.getCurrentMxCAD().drawEntity(g)}static add3PLineAngular(i,n,e,t,o,s,d){const c=r.MidPoint(n,e),l=r.GetDipAngle(i,c),_=r.PolarPoint(i,l,t),h=new a.McDb2LineAngularDimension;h.xLine1Start=n,h.xLine1End=i,h.xLine2Start=e,h.xLine2End=i,h.arcPoint=_,s!="<>"&&(h.dimensionText=s),h.setDimVarDouble(44,0),h.setDimVarDouble(42,100),h.setDimVarInt(177,0),h.setDimVarInt(178,0);const P=a.MxCpp.getCurrentMxCAD().addDimStyle("SlashArrowStyleFixed","40,1.0,41,1.0,140,2.5,141,0.5,142,1.0,147,1.0","77,1,271,3,272,3,173,0,172,1,174,1,75,0,76,0,287,4,279,1","","");return h.dimensionStyle=P,h.setDimVarInt(179,3),h.setDimVarDouble(275,2),h.setDimVarInt(148,3),o.isEqualTo(new a.McGePoint3d(0,0,0))||(h.textPosition=o),a.MxCpp.getCurrentMxCAD().drawEntity(h)}static AddDimAligned(i,n,e,t){try{const o=new a.McDbAlignedDimension;if(o.xLine1Point=i,o.xLine2Point=n,o.dimLinePoint=e,o.oblique=0,t==="< >"||t===""){const d=Math.sqrt(Math.pow(n.x-i.x,2)+Math.pow(n.y-i.y,2));o.dimensionText=d.toFixed(2)}else o.dimensionText=t;return a.MxCpp.getCurrentMxCAD().drawEntity(o)}catch(o){return console.error("创建对齐标注失败:",o),new a.McObjectId}}static AddDimRotated(i,n,e,t){const o=new a.McGePoint3d(n.x,n.y),s=new a.McGePoint3d(e.x,e.y),d=s.x-o.x,c=s.y-o.y,l=Math.sqrt(d*d+c*c),_=Math.atan2(c,d),h=a.MxCpp.getCurrentMxCAD().addDimStyle("SlashArrowStyleFixed","40,1.0,41,1.0,140,2.5,141,0.5,142,1.0,147,1.0","77,1,271,3,272,3,173,0,172,1,174,1,75,0,76,0,287,4,279,1","",""),P=Math.round(Math.abs(l*Math.cos(_-i))).toString(),u=new a.McDbRotatedDimension;return u.rotation=i,u.xLine1Point=n,u.xLine2Point=e,u.dimLinePoint=n,u.dimensionText=P,u.dimLinePoint=t,u.trueColor=new a.McCmColor(255,255,255),u.dimensionStyle=h,r.AppendEntity(u)}static AddDimRotated5PScale(i,n,e,t,o){const s=a.MxCpp.getCurrentMxCAD().addDimStyle("SlashArrowStyleFixed","40,1.0,41,1.0,140,2.5,141,0.5,142,1.0,147,1.0","77,1,271,3,272,3,173,0,172,1,174,1,75,0,76,0,287,4,279,1","",""),d=new a.McGePoint3d(n.x,n.y),c=new a.McGePoint3d(e.x,e.y),l=c.x-d.x,_=c.y-d.y,h=Math.sqrt(l*l+_*_),P=Math.atan2(_,l),u=Math.abs(h*Math.cos(P-i))*o,p=Math.round(u).toString(),M=new a.McDbRotatedDimension;return M.rotation=i,M.xLine1Point=n,M.xLine2Point=e,M.dimLinePoint=t,M.dimensionText=p,M.trueColor=new a.McCmColor(255,255,255),M.dimensionStyle=s,r.AppendEntity(M)}static AddDimRotated6PScale(i,n,e,t,o,s){const d=a.MxCpp.getCurrentMxCAD().addDimStyle("SlashArrowStyleFixed","40,1.0,41,1.0,140,2.5,141,0.5,142,1.0,147,1.0","77,1,271,3,272,3,173,0,172,1,174,1,75,0,76,0,287,4,279,1","",""),c=new a.McDbRotatedDimension;c.rotation=i,c.xLine1Point=n,c.xLine2Point=e,c.dimLinePoint=t;const l=new a.McGeVector3d(e.x-n.x,e.y-n.y),_=Math.round(Math.abs(l.length()*Math.cos(l.angleTo1(new a.McGeVector3d(0,0))-i))*s).toString();return c.dimensionText=_,c.textPosition=o,c.trueColor=new a.McCmColor(255,255,255),c.dimensionStyle=d,r.AppendEntity(c)}static AddDimRotated6PNoDimLine(i,n,e,t,o,s){const d=a.MxCpp.getCurrentMxCAD().addDimStyle("SlashArrowStyleFixed","40,1.0,41,1.0,140,2.5,141,0.5,142,1.0,147,1.0","77,1,271,3,272,3,173,0,172,1,174,1,75,0,76,0,287,4,279,1","",""),c=new a.McDbRotatedDimension;return c.rotation=i,c.xLine1Point=n,c.xLine2Point=e,c.dimensionText=o,c.dimLinePoint=t,c.trueColor=new a.McCmColor(255,255,255),c.dimensionStyle=d,s&&(c.textStyleId=s),r.AppendEntity(c)}static AddDimRotated6P(i,n,e,t,o,s){const d=a.MxCpp.getCurrentMxCAD().addDimStyle("SlashArrowStyleFixed","40,1.0,41,1.0,140,2.5,141,0.5,142,1.0,147,1.0","77,1,271,3,272,3,173,0,172,1,174,1,75,0,76,0,287,4,279,1","",""),c=new a.McDbRotatedDimension;return c.rotation=i,c.xLine1Point=n,c.xLine2Point=e,c.dimLinePoint=t,c.dimensionText=s,c.trueColor=new a.McCmColor(255,255,255),c.dimensionStyle=d,r.AppendEntity(c)}static AddDimRotated5P(i,n,e,t,o){const s=a.MxCpp.getCurrentMxCAD().addDimStyle("SlashArrowStyleFixed","40,1.0,41,1.0,140,2.5,141,0.5,142,1.0,147,1.0","77,1,271,3,272,3,173,0,172,1,174,1,75,0,76,0,287,4,279,1","",""),d=new a.McDbRotatedDimension;return d.rotation=i,d.xLine1Point=n,d.xLine2Point=e,d.dimLinePoint=t,d.dimensionText=o,d.trueColor=new a.McCmColor(255,255,255),d.dimensionStyle=s,r.AppendEntity(d)}static AppendEntity(i){let n=i.getObjectID();return n=a.MxCpp.getCurrentMxCAD().drawEntity(i),n}static UcsToWcs(i){return i}static Insert_Block(i,n,e,t){const o=new a.McObjectId;return o}static AddBrokenLine(i,n,e,t,o){const s=new a.McObjectId;if(i.isEqualTo(n))return s;{const d=[],c=r.GetDipAngle(i,n),l=r.MidPoint(i,n),_=r.PolarPoint(i,Math.PI+c,t),h=r.PolarPoint(l,Math.PI+c,1.875*e),P=r.PolarPoint(r.PolarPoint(l,Math.PI+c,.625*e),c+Math.PI/2,1.875*e),u=r.PolarPoint(r.PolarPoint(l,c,.625*e),c-Math.PI/2,1.875*e),p=r.PolarPoint(l,c,1.875*e),M=r.PolarPoint(n,c,t);return d.push(_),d.push(h),d.push(P),d.push(u),d.push(p),d.push(M),r.addPline5P(d,0,o,!1,!1)}}static AddEllipse(i,n,e){try{const t=new a.McDbEllipse(i.x,i.y,i.z,n.angleTo1(new a.McGeVector3d),e,0,2*Math.PI);return a.MxCpp.getCurrentMxCAD().drawEntity(t)}catch(t){return console.error("Failed to add ellipse:",t),new a.McObjectId}}static AddRec5P(i,n,e=7,t="CONTINUOUS",o=1){try{if(i.x===n.x||i.y===n.y)return console.error("两点在同一水平线或竖直线上,不能画矩形"),new a.McObjectId;const s=new a.McDbPolyline(4);return s.addVertexAt(new a.McGePoint3d(i.x,i.y),0,0,0),s.addVertexAt(new a.McGePoint3d(i.x,n.y),0,0,0),s.addVertexAt(new a.McGePoint3d(n.x,n.y),0,0,0),s.addVertexAt(new a.McGePoint3d(n.x,i.y),0,0,0),s.isClosed=!0,s.linetype=t,s.linetypeScale=o,s.colorIndex=e,a.MxCpp.getCurrentMxCAD().drawEntity(s)}catch(s){return console.error("Failed to add rectangle:",s),new a.McObjectId}}static AddRec(i,n,e,t=7,o="CONTINUOUS",s=1){try{const d=new a.McGePoint3d(i.x+e,i.y+n,0);if(i.x===d.x||i.y===d.y)return console.error("两点在同一水平线或竖直线上,不能画矩形"),new a.McObjectId;const c=new a.McDbPolyline(4);return c.addVertexAt(new a.McGePoint3d(i.x,i.y),0,0,0),c.addVertexAt(new a.McGePoint3d(i.x,d.y),0,0,0),c.addVertexAt(new a.McGePoint3d(d.x,d.y),0,0,0),c.addVertexAt(new a.McGePoint3d(d.x,i.y),0,0,0),c.isClosed=!0,c.linetype=o,c.linetypeScale=s,c.colorIndex=t,a.MxCpp.getCurrentMxCAD().drawEntity(c)}catch(d){return console.error("Failed to add rectangle:",d),new a.McObjectId}}static AddSpline(i){try{const n=new a.McDbSpline,e=new a.McGePoint3dArray;return i.forEach((t,o)=>{e.append(t)}),n.setFitPoints({degree:0,fitTolerance:4,fitPoints:e,tangentsExist:!1,startTangent:new a.McGeVector3d,endTangent:new a.McGeVector3d}),a.MxCpp.getCurrentMxCAD().drawEntity(n)}catch(n){return console.error("Failed to add spline:",n),new a.McObjectId}}static CreateAndInsertBlock(i,n,e,t,o){let s=new a.McObjectId;const d=s.getMcDbBlockTableRecord()||{};d.name=i,d.origin=n;try{for(const _ of t)o&&v.Erase(_);let c=new a.McObjectId,l=new a.McDbBlockReference(d);return l.scaleFactors=new a.McGePoint3d(1,1,1),l.rotation=0,s=a.MxCpp.getCurrentMxCAD().drawEntity(l),s}catch(c){return s}}}class v{static erase(i){try{i!=null&&i.erase()}catch(n){console.error("Failed to erase entity:",i,n)}}static Erase(i){i.erase()}static move(i,n,e){try{if(!i.isValid()){console.warn("Move called with an invalid or null ObjectId.");return}const t=e.sub(n),o=new a.McGeMatrix3d;o.setToTranslation(t);const s=i.getMcDbEntity();if(s===null)return;s.transformBy(o)}catch(t){console.error("Failed to move entity:",i,t)}}static Mirror(i,n,e,t){try{new a.McGeMatrix3d().setMirror(n,e);const s=i.getMcDbEntity();if(!s)return console.error("Could not get entity for Mirroring with ID:",i),new a.McObjectId;if(t){const d=s.mirror(n,e);return i}else{const d=s.clone();return d.mirror(n,e),r.AppendEntity(d)}}catch(o){return console.error("Failed to Mirror entity:",i,o),new a.McObjectId}}static Scale(i,n,e){const t=new a.McGeMatrix3d;t.setToScaling(e,n),i.transformBy(t),i.updateDisplay()}static scale(i,n,e){try{if(!i||!i.isValid()){console.warn("Scale called with an invalid or null ObjectId.");return}const t=i.getMcDbEntity();if(!t){console.error("Could not get entity for scaling with ID:",i);return}this.Scale(t,n,e)}catch(t){console.error("Failed to scale entity:",i,t)}}static Copy(i,n,e){try{const t=e.sub(n),o=new a.McGeMatrix3d;o.setToTranslation(t);const s=i.clone();s.transformBy(o),r.AppendEntity(s)}catch(t){console.error("Failed to copy entity:",t)}}static copy(i,n,e){try{if(!i||!i.isValid()){console.warn("Copy called with an invalid or null ObjectId.");return}const t=i.getMcDbEntity();if(!t){console.error("Could not get entity for copying with ID:",i);return}this.Copy(t,n,e)}catch(t){console.error("Failed to copy entity:",i,t)}}static copy4P(i,n,e,t){try{if(!i||!i.isValid())return console.warn("Copy called with an invalid or null ObjectId."),new a.McObjectId;const o=i.getMcDbEntity();if(!o)return console.error("Could not get entity for copying with ID:",i),new a.McObjectId;const s=e.sub(n),d=new a.McGeMatrix3d;d.setToTranslation(s);const c=o.clone();return c.transformBy(d),r.AppendEntity(c)}catch(o){return console.error("Failed to copy entity:",i,o),new a.McObjectId}}static Rotate(i,n,e){try{const t=new a.McGeMatrix3d;t.setToRotation(e,new a.McGeVector3d(0,0,1),n),i.transformBy(t),i.updateDisplay()}catch(t){console.error("Failed to rotate entity:",t)}}static rotate(i,n,e){try{if(!i||!i.isValid()){console.warn("Rotate called with an invalid or null ObjectId.");return}const t=i.getMcDbEntity();if(!t){console.error("Could not get entity for rotating with ID:",i);return}this.Rotate(t,n,e)}catch(t){console.error("Failed to rotate entity:",i,t)}}static offset(i,n){try{if(!i||!i.isValid()){console.warn("Offset called with an invalid or null ObjectId.");return}if(!i.getMcDbEntity()){console.error("Could not get entity for offsetting with ID:",i);return}console.warn("Offset function is not fully implemented. Please check mxcad API for curve offsetting.")}catch(e){console.error("Failed to offset entity:",i,e)}}static arrayRectang(i,n,e,t,o){try{if(!i||!i.isValid()){console.warn("ArrayRectang called with an invalid or null ObjectId.");return}const s=i.getMcDbEntity();if(!s){console.error("Could not get entity for arraying with ID:",i);return}for(let d=0;d<n;d++)for(let c=0;c<e;c++){const l=new a.McGeVector3d(c*o,d*t,0),_=new a.McGeMatrix3d;_.setToTranslation(l);const h=s.clone();h.transformBy(_),r.AppendEntity(h)}s.erase()}catch(s){console.error("Failed to create rectangular array:",i,s)}}static arrayPolar(i,n,e,t){try{if(!i||!i.isValid()){console.warn("ArrayPolar called with an invalid or null ObjectId.");return}const o=i.getMcDbEntity();if(!o){console.error("Could not get entity for arraying with ID:",i);return}for(let s=0;s<e-1;s++){const d=t*(s+1)/e,c=new a.McGeMatrix3d;c.setToRotation(d,new a.McGeVector3d(0,0,1),n);const l=o.clone();l.transformBy(c),r.AppendEntity(l)}}catch(o){console.error("Failed to create polar array:",i,o)}}}class to{MoveDraw_Sx(i,n){const e=n.Property;try{for(const t of e.EntityIds.DicLinIdCol.values())for(const o of t)if(o instanceof Array)for(const s of o)v.move(s,new a.McGePoint3d(0,0,0),i);else v.move(o,new a.McGePoint3d(0,0,0),i)}catch(t){console.log("错误代码:1101",t)}}}class pe{InitializeAndRunLining(i,n,e,t){const o=e.Cq.linDataHelper,s=e.Cq.liningCalcHelper,d=e.Cq.liningBase,c=!1;o.InitLinCommonData(n,c,t),o.InitColorAndCoords(n,i),n.Property.ContourPoints.Cq.DicFirst=s.CalcPt3dColFirst(n),n.Property.ContourPoints.Cq.DicSecond=s.CalcPt3dColSecond(n),n.Property.ContourPoints.Cq.DicForth_Gq=s.CalcPt3dColForth(n),n.Property.ContourPoints.Cq.DicForth_Yg=s.CalcPt3dColForth_Yg(n),n.Property.ContourPoints.Cq.DicThird_Ylbx_Gq=s.CalcPt3dColThird_Ylbx_Gq(n),n.Property.ContourPoints.Cq.DicThird_Ylbx_Yg=s.CalcPt3dColThird_Ylbx_Yg(n),o.CalcLinHotData(n),d.DrawLining(n,t),new to().MoveDraw_Sx(new a.McGePoint3d(i.x+135,i.y-145,0),n)}InitializeAndRunLiningPartial(i,n,e,t){const o=e.Cq.linDataHelper,s=e.Cq.liningCalcHelper,d=e.Cq.liningBase,c=!1;o.InitLinCommonData(n,c,t),o.InitColorAndCoords(n,i),n.Property.ContourPoints.Cq.DicFirst=s.CalcPt3dColFirst(n),n.Property.ContourPoints.Cq.DicSecond=s.CalcPt3dColSecond(n),n.Property.ContourPoints.Cq.DicForth_Gq=s.CalcPt3dColForth(n),n.Property.ContourPoints.Cq.DicForth_Yg=s.CalcPt3dColForth_Yg(n),n.Property.ContourPoints.Cq.DicThird_Ylbx_Gq=s.CalcPt3dColThird_Ylbx_Gq(n),n.Property.ContourPoints.Cq.DicThird_Ylbx_Yg=s.CalcPt3dColThird_Ylbx_Yg(n),o.CalcLinHotData(n),d.DrawLiningPartial(n,t)}}class Bt{constructor(){this.Th="图号",this.Dtm="大图名",this.Xtm="小图名",this.Htrq="绘图日期",this.Gdlx="有砟"}}class kt{constructor(){this.Wmax=0,this.Wcur=0}}class te{}class ee{}class ne{constructor(){this.d1_Gqcqhd=45,this.d2_Ygcqhd=50,this.d3_Zpc=0,this.m1_Gqczhd=23,this.m2_Ygczhd=23,this.t1_Gqylbx="10~20",this.t2_Ygylbx="0",this.Dh_mgyxjj=120,this.Dh_mgyxjj_左拱部=120,this.Dh_mgyxjj_右拱部=120,this.Dh_mgyxjj_左边墙=120,this.Dh_mgyxjj_右边墙=120,this.Lg_Gbmgcd_左拱部=300,this.Lg_Gbmgcd_右拱部=350,this.Lb_Bqmgcd_左边墙=300,this.Lb_Bqmgcd_右边墙=300,this.Dz_Mgzxjj=120,this.Lg_Gbmgcd=300,this.Lb_Bqmgcd=300,this.Ly_Ygmgcd=0,this.Bw_Wpjj=20,this.Fwi_wpzj=6,this.Wpbw=1,this.Mgbw=1}}let zt=class{constructor(){this.Cqtk=new Bt,this.Zhcs=new ne,this.Dmcc=new kt,this.Jzcl=new te,this.Sydl=new ee}};class Yt{constructor(){this.GjXh2="",this.Ylbx_Yg=0,this.Len_Sjmg=0,this.Bqyc=0}}class Wt{}let Me=class{constructor(){this.Gjcs=new Yt,this.Gjtk=new Wt}};class ge{}class oe{}class Zt{constructor(){this.Pjcs=new ge,this.Pjtk=new oe}}class Et{constructor(){this.Cq=new zt,this.Pj=new Zt,this.Gj=new Me}}class eo{constructor(){this.Len_Cq_First=0,this.Len_Cq_Second=0,this.Len_Cq_Fourth=0,this.Len_Cq_SecondOffest10cm=0,this.Area_Cq_First=0,this.Area_Cq_Second=0,this.Area_Cq_Fourth=0,this.Lengthsg=0,this.AreadOfZcsg=0,this.AreaOfYcsg=0,this.AreaOfZxsg=0,this.AreaOfZxsg外包框=0,this.Length_Gj_In_Gq=0,this.Length_Gj_Out_Gq=0,this.Length_Gj_Cen_Gq=0,this.Length_Gj_In_Yg=0,this.Length_Gj_Out_Yg=0,this.Length_Gj_Cen_Yg=0,this.Len_Pj_Out_全环=0,this.Len_Pj_In_全环=0,this.Len_Pj_Center_全环=0,this.Len_Pj_Cen_Sgfys=0,this.Len_Pj_In_Sgfys=0,this.Len_Pj_Out_Sgfys=0,this.number_Around=0,this.number_WallArch=0,this.number1_SameThick_WallArch=0,this.number2_DiffThick_Wall=0,this.number3_DiffThick_Invert=0,this.number4_SameThick_Invert=0,this.number_Invert=0,this.number7_AboveSgfOutsideLap_Wall=0,this.number8_AboveSgftInsideLap_Wall=0,this.number9_BelowSgf_Wall=0,this.lengths_DiffThick_WallArch=[],this.lengths_DiffThick_Invert=[],this.length_average_DiffThick_WallArch=0,this.SteelNumber=[],this.LenN3_Sgfyx=0,this.LenN4_Sgfyx=0,this.LenN1_Sgfys=0,this.LenN2_Sgfys=0,this.centerHookPoints=[],this.outHookPoints=[],this.inHookPoints=[]}}class no{constructor(){this.Color_Jg=3,this.Color_Bj=4,this.Color_Sg=2,this.Color_Fzx=11,this.Color_Qtxx=20,this.Color_CqLk=13}}class oo{constructor(){this.Pj=new io,this.Cq=new so,this.Gj=new ro}}class io{constructor(){this.DicSteelFirst=new Map,this.DicSteelSecond=new Map,this.DicSteelCenter=new Map,this.DicSteelCenter_Yg=new Map,this.DicSteelFirst_Yg=new Map,this.DicSteelSecond_Yg=new Map}}class so{constructor(){this.DicFirst=new Map,this.DicSecond=new Map,this.DicForth_Gq=new Map,this.DicForth_Yg=new Map,this.DicThird_Ylbx_Gq=new Map,this.DicThird_Ylbx_Yg=new Map}}class ro{constructor(){this.DicFramIn_Gq=new Map,this.DicFramOut_Gq=new Map,this.DicFramCen_Gq=new Map,this.DicFramIn_Yg=new Map,this.DicFramOut_Yg=new Map,this.DicFramCen_Yg=new Map}}class ao{constructor(){this.DicLinIdCol=new Map,this.DicSteelIdCol=new Map,this.DicFramId=new Map,this.DicId_A=new Map,this.DicId_B=new Map,this.DicId_C=new Map,this.DicId_D=new Map,this.DicId_E=new Map,this.DicIdCol_MainBarDetail=new Map,this.DicIdCol_N2=new Map,this.DicIdCol_N34=new Map,this.DicIdCol_N3=new Map,this.DicIdCol_N1=new Map,this.DicIdCol_N4=new Map}}class co{constructor(){this.Pj=new _o,this.Cq=new lo,this.Gj=new ho}}class lo{}class _o{}class ho{}class Po{constructor(){this.ptGqA_Z1=new a.McGePoint3d,this.ptGqA_Z2=new a.McGePoint3d,this.ptGqA_Z3=new a.McGePoint3d,this.ptGqA4_Z=new a.McGePoint3d,this.ptGqA4_Y=new a.McGePoint3d,this.ptYgA5_Z=new a.McGePoint3d,this.ptYgA6_Z=new a.McGePoint3d,this.ptYgA6_Y=new a.McGePoint3d,this.ptYgA5_Y=new a.McGePoint3d,this.DiA接头厚度=32,this.DiB接头厚度=16,this.GzHw_Sjmg_根数=8,this.G_42xdg=3.35}}class uo{constructor(){this.pt施工缝左1=new a.McGePoint3d,this.pt施工缝左2=new a.McGePoint3d,this.pt施工缝右1=new a.McGePoint3d,this.pt施工缝右2=new a.McGePoint3d,this.ptStart左=new a.McGePoint3d,this.ptEnd左=new a.McGePoint3d,this.ptStart右=new a.McGePoint3d,this.ptEnd右=new a.McGePoint3d,this.pt右施工缝与配筋中线交点=new a.McGePoint3d,this.pt左施工缝与配筋中线交点=new a.McGePoint3d}}class po{}class Mo{constructor(){this.AreaOf错台量=0}}class go{constructor(){this.Height_Bz=3.5,this.Height_Sm=4.5,this.Height_Ht=3.5,this.Height_Tb=3.5}}class Co{constructor(){this.Color=new no,this.TextHeight=new go,this.AreaLength=new eo,this.ContourPoints=new oo,this.EntityIds=new ao,this.FrameCoords=new co,this.FramJoint=new Po,this.KeyPoint=new uo,this.SteelCalcData=new Mo,this.Quantitys=new po}}class So{constructor(){this.IsCPbt=!1,this.YgCPValue=0}}class Do{constructor(){this._DicFramIn_Gq={},this._DicFramOut_Gq={},this._DicFramCen_Gq={},this._Color_Jg=0,this._Color_Bj=4,this._Color_Sg=2,this._Color_Fzx=11,this._Color_Qtxx=8,this._Height_Bz=3.5,this._Height_Sm=4.5,this._Height_Ht=3.5,this._Height_Tb=4,this._ptBase1=new a.McGePoint3d,this._ptBase2=new a.McGePoint3d,this._ptBase3=new a.McGePoint3d,this._DicFramId={},this._DiA接头厚度=32,this._DiB接头厚度=16,this._GzHw_Sjmg_根数=8,this._G_42xdg=3.35}get DicFramIn_Gq(){return this._DicFramIn_Gq}set DicFramIn_Gq(i){this._DicFramIn_Gq=i}get DicFramOut_Gq(){return this._DicFramOut_Gq}set DicFramOut_Gq(i){this._DicFramOut_Gq=i}get DicFramCen_Gq(){return this._DicFramCen_Gq}set DicFramCen_Gq(i){this._DicFramCen_Gq=i}get Color_Jg(){return this._Color_Jg}set Color_Jg(i){this._Color_Jg=i}get Color_Bj(){return this._Color_Bj}set Color_Bj(i){this._Color_Bj=i}get Color_Sg(){return this._Color_Sg}set Color_Sg(i){this._Color_Sg=i}get Color_Fzx(){return this._Color_Fzx}set Color_Fzx(i){this._Color_Fzx=i}get Color_Qtxx(){return this._Color_Qtxx}set Color_Qtxx(i){this._Color_Qtxx=i}get Height_Bz(){return this._Height_Bz}set Height_Bz(i){this._Height_Bz=i}get Height_Sm(){return this._Height_Sm}set Height_Sm(i){this._Height_Sm=i}get Height_Ht(){return this._Height_Ht}set Height_Ht(i){this._Height_Ht=i}get Height_Tb(){return this._Height_Tb}set Height_Tb(i){this._Height_Tb=i}get ptBase1(){return this._ptBase1}set ptBase1(i){this._ptBase1=i}get ptBase2(){return this._ptBase2}set ptBase2(i){this._ptBase2=i}get ptBase3(){return this._ptBase3}set ptBase3(i){this._ptBase3=i}get DicFramId(){return this._DicFramId}set DicFramId(i){this._DicFramId=i}get DiA接头厚度(){return this._DiA接头厚度}set DiA接头厚度(i){this._DiA接头厚度=i}get DiB接头厚度(){return this._DiB接头厚度}set DiB接头厚度(i){this._DiB接头厚度=i}get GzHw_Sjmg_根数(){return this._GzHw_Sjmg_根数}set GzHw_Sjmg_根数(i){this._GzHw_Sjmg_根数=i}get G_42xdg(){return this._G_42xdg}set G_42xdg(i){this._G_42xdg=i}}class Ce{constructor(){this.Thick_A=0,this.Thick_B=0,this.Thick_C=0,this.Thick_D=0,this.Ljyg_Gq="",this.Ljyg_Qh="",this.Lslm_Qh=0,this.Lslm_Gq=0,this.Dk_Gq=0,this.Dk_Qh=0,this.Sjmg="",this.Len_N3=0,this.Len_N4=0,this.Len_N5=0,this.DistN3=0,this.DistN4=0}}class yo{constructor(){this.Num_A=0,this.Num_B=0,this.Num_C=0,this.Num_D=0,this.Num_E=0}}class Io{constructor(){this.Jtcs_200mm=new Ce,this.Jtcs_160mm=new Ce,this.Jtcs_180mm=new Ce,this.Jtcs_150mm=new Ce,this.Dysl=new yo}}class gn{constructor(){this.Num_A=0,this.Num_B=0,this.Num_C=0,this.Num_D=0,this.Num_E=0}}class ie{constructor(){this.Thick_A=0,this.Thick_B=0,this.Thick_C=0,this.Thick_D=0,this.Jtygsl_Gq="",this.Jtygsl_Qh="",this.Lslm_Qh="",this.Lslm_Gq="",this.Dk_Gq="",this.Dk_Qh="",this.Sjmg=""}}class To{constructor(){this.Jtsc_I16=new ie,this.Jtsc_I18=new ie,this.Jtsc_I20=new ie,this.Jtsc_I22=new ie,this.Jtsc_I25=new ie,this.Dysl=new gn}}class Se{constructor(){this.Thick_A=0,this.Thick_B=0,this.Thick_C=0,this.Thick_D=0,this.Jtygsl_Gq="",this.Jtygsl_Qh="",this.Lslm_Qh="",this.Lslm_Gq="",this.Dk_Gq="",this.Dk_Qh="",this.Sjmg=""}}class Fo{constructor(){this.Num_A=0,this.Num_B=0,this.Num_C=0,this.Num_D=0,this.Num_E=0}}class Ro{constructor(){this.Jtsc_Hw150=new Se,this.Jtsc_Hw175=new Se,this.Jtsc_Hw200=new Se,this.Jtsc_Hw250=new Se,this.Dysl=new Fo}}class wo{constructor(){this.Gs=new Io,this.Gz=new To,this.Hw=new Ro,this.CPsz=new So,this.Dysl=new gn,this.IsKcjt=!0,this.IsCqlkx=!0,this.IsJqjs=!1,this.IsDjSg=!1,this.IsJtModel8=!0,this.IsJtModel10=!0,this.GjJd=3,this.CT2=new Do}}class Go{constructor(){this.Sc=100,this.Bzzg=3.5,this.Smzg=4.5,this.Htzg=3.5,this.Cqjd=2,this.Spsgf=!0,this.Zxsg=!0,this.Wlkxq=!1,this.Zbdycqlk=!1,this.R3ljfs=!1,this.Spxj=!1,this.Display0=!0,this.IsThbt=!1,this.IsGjwMg_Klylbx=!1,this.MarkCur=!1}}var Cn=(D=>(D[D.Bqj=0]="Bqj",D[D.Ngdm=1]="Ngdm",D[D.Tfsb=2]="Tfsb",D[D.Sgdys=3]="Sgdys",D))(Cn||{});class fo{constructor(){this.Phntqw=0,this.Gjw_NgdmValue=0,this.Bqmggd=Cn.Ngdm,this.Mg_NgdmValue=0}}class Ao{constructor(){this.Yzjcgj=0,this.Wzjcgj=0,this.YzDbgj_HRB=0,this.YzDbgj_HPB=0,this.WzDbgj_HRB=0,this.WzDbgj_HPB=0}}class Lo{constructor(){this.YzCggj=0,this.WzCggj=0,this.YzCggbgj=0,this.WzCggbgj=0,this.YzCggbhnt=0,this.WzCggbhnt=0,this.YzZxggbgj=0,this.WzZxggbgj=0,this.YzZxggbhnt=0,this.WzZxggbhnt=0,this.Cgcshntcl="C25混凝土",this.Cggbhntcl="",this.Zxsghntcl="C25混凝土",this.Zxsggbhntcl=""}}class xo{constructor(){this.Wzhnt=0,this.WzPVC=0}}class bo{constructor(){this.JsgdValue=0,this.Hxsgfjj=0,this.Hxmgzxjj=0,this.Hxpsgjj=0,this.Stgjj=0,this.Name_Zmzsd="中埋式止水带",this.Name_Btszsd="背贴式止水带",this.Name_Yspzzst="遇水膨胀止水条",this.Name_Szfjlmfg="双组份聚硫密封膏",this.Name_Jmj="界面剂",this.Name_Hxmg="!50环向盲管",this.Name_Zxmg="!100环向盲管",this.With_zfFpsb_Sgf=1.5,this.With_zfFpsb_MidCq=1}}class mo{constructor(){this.Cqzf=new fo,this.Eccq=new Ao,this.Sgdlc=new Lo,this.Tb=new xo,this.Fps=new bo}}class Sn{constructor(){this.A=0,this.B=0,this.C=0,this.D=0,this.E=0,this.F=0,this.G=0,this.H=0,this.I=0,this.J=0,this.K=0,this.L=0,this.M=0,this.N=0}}let Oo=class{constructor(){this.A=0,this.B=0,this.C=0,this.D=0,this.E=0,this.F=0,this.G=0,this.R=0,this.H=0}};class Ho{constructor(){this.Zcgc=new Sn,this.Ycgc=new Sn,this.Zxsg=new Oo}}class jo{constructor(){this.X_Offset=0,this.Y_Offset=0,this.Gd_ylbx=0,this.Bq_ylbx=0,this.Proportiion=33.33,this.IsDrawYlbx_Yg=!1,this.IsYgYlbxDYGq=!0}}class No{constructor(){this.Cqdm=new Go,this.Cqsz=new mo,this.Sg=new Ho,this.Tssz=new jo}}class vo{constructor(){this.Gjbjd=3,this.Djcd=!1,this.IsJqjs=!0,this.IsZwg=!1,this.IsN5_HRB400=!1,this.IsZjcyHRB400=!0,this.DjcdValue=37.5,this.IsAntiSeismic=!1,this.IsOnlyInArchWall=!1,this.IsTspj=!0,this.MgDjcdValue=40,this.Len_Ygzjyscd=80}}class qo{constructor(){this.Sgdlcgbth="",this.Xjtth="",this.Dbgjbztth="",this.Gsgjjtth_150="",this.Gsgjjtth_160="",this.Gsgjjtth_180="",this.Gsgjjtth_200="",this.Gjjtth_I16="",this.Gjjtth_I18="",this.Gjjtth_I20="",this.Gjjtth_I22="",this.Gjjtth_I25="",this.Gjjtth_HW150="",this.Gjjtth_HW175="",this.Gjjtth_HW200="",this.Gjjtth_HW250=""}}class Dn{constructor(){this.ChenQi=new No,this.GangJia=new wo,this.PeiJin=new vo,this.Yyth=new qo}}class De{constructor(){this.Setting=new Dn,this.Data=new Et,this.Property=new Co}}class yn{constructor(){this.H_盖板厚=0,this.b侧壁厚=0,this.b侧壁盖板搭接宽=0,this.B_水沟宽=0,this.b沟槽间壁厚2=0,this.H_通信电缆深=0,this.B_通信电缆槽宽=0,this.b电缆槽搭接宽=0,this.b_水沟盖板宽=0,this.b_通信电缆盖板宽=0}}class In{constructor(){this.b侧壁厚=0,this.b侧壁盖板搭接宽=0,this.b沟槽间壁厚1=0,this.b沟槽间壁厚2=0,this.b电缆槽搭接宽=0,this.b_电力电缆盖板宽=0,this.b_水沟盖板宽=0,this.b_通信电缆盖板宽=0,this.B_电力电缆槽宽=0,this.B_水沟宽=0,this.B_通信电缆槽宽=0,this.H_电力电缆深=0,this.H_通信电缆深=0,this.H_盖板厚=0}}class Bo{constructor(){this.zxA内侧宽=0,this.zxB侧壁厚=0,this.zxC盖板搭接宽=0,this.zxD盖板宽=0,this.zxE盖板厚=0,this.zxF内侧深=0,this.zxG中心管圆心=0,this.zxR半径=0,this.zxd1管壁厚=0}}class Rt{static SideGroove1c1g(i,n,e,t,o,s){t-=o.H_盖板厚;let d=0,c=Math.PI;i.x<n.x&&(d=Math.PI,c=0);const l=[],_=[],h=new a.McGePoint3d(i.x,n.y,0),P=r.PolarPoint(h,c,o.b侧壁厚),u=r.PolarPoint(P,1.5*Math.PI,o.H_盖板厚),p=r.PolarPoint(u,c,o.b侧壁盖板搭接宽),M=r.PolarPoint(p,1.5*Math.PI,t),g=r.PolarPoint(M,c,o.B_水沟宽),C=r.PolarPoint(g,.5*Math.PI,t),y=r.PolarPoint(C,c,o.b沟槽间壁厚2),F=r.PolarPoint(y,1.5*Math.PI,o.H_通信电缆深),I=r.PolarPoint(F,c,o.B_通信电缆槽宽),T=r.PolarPoint(I,.5*Math.PI,o.H_通信电缆深),R=r.PolarPoint(T,c,o.b电缆槽搭接宽),L=r.PolarPoint(R,.5*Math.PI,o.H_盖板厚);_.push(i,h,P,u,p,M,g,C,y,F,I,T,R,L,n);const f=[],G=r.PolarPoint(u,c,o.b_水沟盖板宽+.1),O=r.PolarPoint(G,.5*Math.PI,o.H_盖板厚),b=r.PolarPoint(O,d,o.b_水沟盖板宽),H=r.PolarPoint(b,1.5*Math.PI,o.H_盖板厚),x=r.PolarPoint(H,c,o.b_通信电缆盖板宽+o.b_水沟盖板宽+.1),j=r.PolarPoint(x,.5*Math.PI,o.H_盖板厚),N=r.PolarPoint(j,d,o.b_通信电缆盖板宽),k=r.PolarPoint(N,1.5*Math.PI,o.H_盖板厚);f.push(G,O,b,H,x,j,N,k),l.push(r.addPline(_,0,0,e,!0,!1)),l.push(r.addPline(f,0,0,e,!0,!1)),_.push(new a.McGePoint3d(n.x,i.y,0)),_.push(i);const Y=new a.McDbPolyline;for(let U=0;U<_.length;U++)Y.addVertexAt(_[U],0,0,0,U);return s.value=Y.getArea().val,l}static SideGroove0c1g(i,n,e,t,o,s){t-=o.H_盖板厚;let d=0,c=Math.PI;i.x<n.x&&(d=Math.PI,c=0);const l=[],_=[],h=new a.McGePoint3d(i.x,n.y,0),P=r.PolarPoint(h,c,o.b侧壁厚),u=r.PolarPoint(P,1.5*Math.PI,o.H_盖板厚),p=r.PolarPoint(u,c,o.b侧壁盖板搭接宽),M=r.PolarPoint(p,1.5*Math.PI,t),g=r.PolarPoint(M,c,o.B_水沟宽),C=r.PolarPoint(g,.5*Math.PI,t),y=r.PolarPoint(C,c,o.b电缆槽搭接宽),F=r.PolarPoint(y,.5*Math.PI,o.H_盖板厚);_.push(i,h,P,u,p,M,g,C,y,F,n);const I=[],T=r.PolarPoint(u,c,o.b_水沟盖板宽+.1),R=r.PolarPoint(T,.5*Math.PI,o.H_盖板厚),L=r.PolarPoint(R,d,o.b_水沟盖板宽),f=r.PolarPoint(L,1.5*Math.PI,o.H_盖板厚);I.push(T,R,L,f,T),l.push(r.addPline(_,0,0,e,!0,!1)),l.push(r.addPline(I,0,0,e,!0,!1)),_.push(new a.McGePoint3d(n.x,i.y,0)),_.push(i);const G=new a.McDbPolyline;for(let O=0;O<_.length;O++)G.addVertexAt(_[O],0,0,0,O);return s.value=G.getArea().val,l}static SideGroove2c1g(i,n,e,t,o,s,d){o=o-s.H_盖板厚;let c=0,l=Math.PI;i.x<n.x&&(c=Math.PI,l=0);const _=[],h=[],P=i,u=new a.McGePoint3d(i.x,t,0),p=r.PolarPoint(u,l,s.b侧壁厚),M=r.PolarPoint(p,Math.PI*3/2,s.H_盖板厚),g=r.PolarPoint(M,l,s.b侧壁盖板搭接宽),C=r.PolarPoint(g,Math.PI*3/2,s.H_电力电缆深),y=r.PolarPoint(C,l,s.B_电力电缆槽宽),F=r.PolarPoint(y,Math.PI/2,s.H_电力电缆深),I=r.PolarPoint(F,l,s.b沟槽间壁厚1),T=r.PolarPoint(I,Math.PI*3/2,o),R=r.PolarPoint(T,l,s.B_水沟宽),L=r.PolarPoint(R,Math.PI/2,o),f=r.PolarPoint(L,l,s.b沟槽间壁厚2),G=r.PolarPoint(f,Math.PI*3/2,s.H_通信电缆深),O=r.PolarPoint(G,l,s.B_通信电缆槽宽),b=r.PolarPoint(O,Math.PI/2,s.H_通信电缆深),H=r.PolarPoint(b,l,s.b电缆槽搭接宽),x=r.PolarPoint(H,Math.PI/2,s.H_盖板厚),j=n;h.push(P),h.push(u),h.push(p),h.push(M),h.push(g),h.push(C),h.push(y),h.push(F),h.push(I),h.push(T),h.push(R),h.push(L),h.push(f),h.push(G),h.push(O),h.push(b),h.push(H),h.push(x),h.push(j);const N=[],k=M,Y=r.PolarPoint(k,l,s.b_电力电缆盖板宽+s.b_水沟盖板宽+s.b_通信电缆盖板宽+.3),U=r.PolarPoint(Y,Math.PI/2,s.H_盖板厚),Q=r.PolarPoint(U,c,s.b_通信电缆盖板宽),K=r.PolarPoint(Q,Math.PI*3/2,s.H_盖板厚),B=r.PolarPoint(K,c,.1),Z=r.PolarPoint(B,Math.PI/2,s.H_盖板厚),V=r.PolarPoint(Z,c,s.b_水沟盖板宽),q=r.PolarPoint(V,Math.PI*3/2,s.H_盖板厚),z=r.PolarPoint(q,c,.1),$=r.PolarPoint(z,Math.PI/2,s.H_盖板厚),nt=r.PolarPoint($,c,s.b_电力电缆盖板宽),ct=r.PolarPoint(nt,Math.PI*3/2,s.H_盖板厚);N.push(k),N.push(Y),N.push(U),N.push(Q),N.push(K),N.push(B),N.push(Z),N.push(V),N.push(q),N.push(z),N.push($),N.push(nt),N.push(ct),N.push(k),_.push(r.addPline5P(h,0,e,!0,!1)),_.push(r.addPline5P(N,0,e,!0,!1)),h.push(new a.McGePoint3d(n.x,i.y,0)),h.push(i);const st=new a.McDbPolyline;for(let et=0;et<h.length;et++)st.addVertexAt(h[et],0,0,0,et);return d.value=st.getArea().val,_}static CenterDitch(i,n,e,t,o,s,d,c){const l=[],_=[],h=s.zxA内侧宽/2+n,P=s.zxA内侧宽/2-n,u=[new a.McGePoint3d(-P-s.zxB侧壁厚,e+(s.zxB侧壁厚-(s.zxD盖板宽-s.zxA内侧宽)/2-.1)*t,0),new a.McGePoint3d(-P-s.zxB侧壁厚,e-s.zxF内侧深-o-s.zxE盖板厚,0),new a.McGePoint3d(h+s.zxB侧壁厚,e-s.zxF内侧深-o-s.zxE盖板厚,0),new a.McGePoint3d(h+s.zxB侧壁厚,e+(s.zxB侧壁厚-(s.zxD盖板宽-s.zxA内侧宽)/2-.1)*t,0),new a.McGePoint3d(h+(s.zxD盖板宽-s.zxA内侧宽)/2+.1,e,0),new a.McGePoint3d(h+(s.zxD盖板宽-s.zxA内侧宽)/2+.1,e-s.zxE盖板厚,0),new a.McGePoint3d(h,e-s.zxE盖板厚,0),new a.McGePoint3d(h,e-s.zxF内侧深-s.zxE盖板厚,0),new a.McGePoint3d(-P,e-s.zxF内侧深-s.zxE盖板厚,0),new a.McGePoint3d(-P,e-s.zxE盖板厚,0),new a.McGePoint3d(-P-(s.zxD盖板宽-s.zxA内侧宽)/2-.1,e-s.zxE盖板厚,0),new a.McGePoint3d(-P-(s.zxD盖板宽-s.zxA内侧宽)/2-.1,e,0)];u.forEach(F=>_.push(F)),_.push(u[0]);const p=s.zxD盖板宽/2+n,M=s.zxD盖板宽/2-n,g=[];[new a.McGePoint3d(p,e,0),new a.McGePoint3d(p,e-s.zxE盖板厚,0),new a.McGePoint3d(-M,e-s.zxE盖板厚,0),new a.McGePoint3d(-M,e,0),new a.McGePoint3d(p,e,0)].forEach(F=>g.push(F)),l.push(r.addPline5P(_,0,i,!0,!1)),l.push(r.addPline5P(g,0,i,!0,!1));const y=new a.McDbPolyline;for(let F=0;F<_.length;F++)y.addVertexAt(_[F],0,0,0,F);return d.value=y.getArea().val,c.value=(s.zxA内侧宽+2*s.zxB侧壁厚)*(o+s.zxF内侧深+s.zxE盖板厚)+Math.pow(s.zxB侧壁厚-(s.zxD盖板宽-s.zxA内侧宽)/2-.1,2)*t,l}static CenterConduit(i,n,e,t,o,s,d,c){const l=[],_=[],h=s.zxA内侧宽/2+n,P=s.zxA内侧宽/2-n,u=[new a.McGePoint3d(h+s.zxB侧壁厚,e-s.zxF内侧深-s.zxE盖板厚-o,0),new a.McGePoint3d(h+s.zxB侧壁厚,e+(s.zxB侧壁厚-(s.zxD盖板宽-s.zxA内侧宽)/2-.1)*t,0),new a.McGePoint3d(h+(s.zxD盖板宽-s.zxA内侧宽)/2+.1,e,0),new a.McGePoint3d(h+(s.zxD盖板宽-s.zxA内侧宽)/2+.1,e-s.zxE盖板厚,0),new a.McGePoint3d(h,e-s.zxE盖板厚,0),new a.McGePoint3d(h,e-s.zxF内侧深-s.zxE盖板厚,0),new a.McGePoint3d(-P,e-s.zxF内侧深-s.zxE盖板厚,0),new a.McGePoint3d(-P,e-s.zxE盖板厚,0),new a.McGePoint3d(-P-(s.zxD盖板宽-s.zxA内侧宽)/2-.1,e-s.zxE盖板厚,0),new a.McGePoint3d(-P-(s.zxD盖板宽-s.zxA内侧宽)/2-.1,e,0),new a.McGePoint3d(-P-s.zxB侧壁厚,e+(s.zxB侧壁厚-(s.zxD盖板宽-s.zxA内侧宽)/2-.1)*t,0),new a.McGePoint3d(-P-s.zxB侧壁厚,e-s.zxF内侧深-s.zxE盖板厚-o,0)];u.forEach(y=>_.push(y)),_.push(u[0]);const p=s.zxD盖板宽/2+n,M=s.zxD盖板宽/2-n,g=[];return[new a.McGePoint3d(p,e,0),new a.McGePoint3d(p,e-s.zxE盖板厚,0),new a.McGePoint3d(-M,e-s.zxE盖板厚,0),new a.McGePoint3d(-M,e,0),new a.McGePoint3d(p,e,0)].forEach(y=>g.push(y)),l.push(r.addPline7P(_,0,4,"DASHED",.25,!0,!1)),l.push(r.addPline7P(g,0,4,"DASHED",.25,!0,!1)),l.push(r.AddCircle(new a.McGePoint3d(n,e-s.zxG中心管圆心,0),s.zxR半径,i)),l.push(r.AddCircle(new a.McGePoint3d(n,e-s.zxG中心管圆心,0),s.zxR半径+s.zxd1管壁厚,i)),d.value=Math.PI*(Math.pow(s.zxR半径+s.zxd1管壁厚,2)-Math.pow(s.zxR半径,2)),c.value=Math.PI*Math.pow(s.zxR半径+s.zxd1管壁厚,2),l}}class me{constructor(){this.Dh_Wall_z=8,this.Lm_Wall_z=30,this.Dh_Arch_z=15,this.Lm_Arch_z=35,this.Dh_Arch_y=12.5,this.Lm_Arch_y=30,this.Dh_Wall_y=10,this.Lm_Wall_y=25,this.Z2c1g=new In,this.Y2c1g=new In,this.Zxsg=new Bo,this.Z1c1g=new yn,this.Y1c1g=new yn,this.Dms=[],this.DmCs=[],this.hotDatas=[],this.IsCircular=!1}}class Tn extends me{}let it=class{static IHFram(i){switch(i){case"I10":return 11.3;case"I12":return 14;case"I12.6":return 14.2;case"I14":return 16.9;case"I16":return 20.5;case"I18":return 24.1;case"I20a":return 27.9;case"I20b":return 31.1;case"I22a":return 33.1;case"I22b":return 36.5;case"I24a":return 37.5;case"I24b":return 41.2;case"I25a":return 38.1;case"I25b":return 42;case"I27a":return 42.8;case"I27b":return 47;case"I28a":return 43.5;case"I28b":return 47.9;case"I30a":return 48.1;case"I30b":return 52.8;case"I30c":return 57.5;case"I32a":return 52.7;case"I32b":return 57.7;case"I32c":return 62.7;case"I36a":return 60;case"I36b":return 65.7;case"I36c":return 71.3;case"I40a":return 67.6;case"I40b":return 73.8;case"I40c":return 80.1;case"I45a":return 80.4;case"I45b":return 87.4;case"I45c":return 94.5;case"I50a":return 93.6;case"I50b":return 101;case"I50c":return 109;case"I55a":return 105;case"I55b":return 114;case"I55c":return 123;case"I56a":return 106;case"I56b":return 115;case"I56c":return 124;case"I63a":return 121;case"I63b":return 131;case"I63c":return 141;case"HW100":return 16.9;case"HW125":return 23.6;case"HW150":return 31.1;case"HW175":return 40.4;case"HW200":return 49.9;case"HW250":return 71.8;case"HW300":return 93;case"HW350":return 135;case"HW400":return 172;default:return 0}}static UFram(i){switch(i){case"U5":return 5.438;case"U6.3":return 6.634;case"U6.5":return 6.709;case"U8":return 8.045;case"U10":return 10.007;case"U12":return 12.059;case"U12.6":return 12.318;case"U14a":return 14.535;case"U14b":return 16.733;case"U16a":return 17.24;case"U16b":return 19.752;case"U18a":return 20.174;case"U18b":return 23;case"U20a":return 22.637;case"U20b":return 25.777;case"U22a":return 24.999;case"U22b":return 28.453;case"U24a":return 26.86;case"U24b":return 30.628;case"U24c":return 34.396;case"U25a":return 27.41;case"U25b":return 31.335;case"U25c":return 35.26;case"U27a":return 30.838;case"U27b":return 35.077;case"U27c":return 39.316;case"U28a":return 31.427;case"U28b":return 35.823;case"U28c":return 40.219;case"U30a":return 34.463;case"U30b":return 39.173;case"U30c":return 43.883;case"U32a":return 38.083;case"U32b":return 43.107;case"U32c":return 48.131;case"U36a":return 47.814;case"U36b":return 53.466;case"U36c":return 59.118;case"U40a":return 58.928;case"U40b":return 65.208;case"U40c":return 71.488;default:return 0}}static Bar(i){switch(i){case"2.5":return .039;case"3":return .055;case"4":return .099;case"5":return .154;case"6":return .222;case"7":return .302;case"8":return .395;case"9":return .499;case"10":return .617;case"11":return .75;case"12":return .888;case"13":return 1.04;case"14":return 1.208;case"15":return 1.39;case"16":return 1.578;case"17":return 1.78;case"18":return 1.998;case"19":return 2.23;case"20":return 2.466;case"21":return 2.72;case"22":return 2.984;case"23":return 3.26;case"24":return 3.551;case"25":return 3.85;case"26":return 4.17;case"27":return 4.495;case"28":return 4.83;case"30":return 5.55;case"32":return 6.31;case"34":return 7.13;case"35":return 7.5;case"36":return 7.99;case"40":return 9.865;default:return 0}}static GJ_H(i){switch(i){case"I12":return 12;case"I14":return 14;case"I16":return 16;case"I18":return 18;case"I20a":case"I20b":return 20;case"I22a":case"I22b":return 22;case"I25a":case"I25b":return 25;case"HW150":return 15;case"HW175":return 17.5;case"HW200":return 20;case"G12":return 12;case"G13":return 13;case"G14":return 14;case"G16":return 16;case"G18":return 18;case"G20":return 20;default:return 0}}static GJ_B(i){switch(i){case"I12":return 74;case"I14":return 80;case"I16":return 88;case"I18":return 94;case"I20a":return 100;case"I20b":return 102;case"I22a":return 110;case"I22b":return 112;case"I25a":return 116;case"I25b":return 118;case"HW150":return 150;case"HW175":return 175;case"HW200":return 200;case"G12":return 120;case"G13":return 130;case"G14":return 140;case"G16":return 160;case"G18":return 180;case"G20":return 200;default:return console.error("输入的钢架型号不能处理,请核实","提示"),0}}static GJXH(i){return i.includes("I")?"工字钢":i.includes("HW")?"HW型钢":"格栅"}};class Oe{constructor(){this.Zjzj=22,this.Len边墙延伸=0,this.rad_AllYg_In=0,this.rad_AllYg_Cen=0,this.rad_AllYg_Out=0,this.DiaN12=it.Bar("22"),this.DiaN3=it.Bar("14"),this.DiaN4=it.Bar("12"),this.DiaN5=it.Bar("8"),this.framDms=[],this.hotDatas=[],this.quantity=[]}}class Fn extends Oe{}class He{constructor(){this.dmSizes=[],this.steelHotDatas=[],this.steelQuantitys=[]}}class Rn extends He{}class je{InitializeAndRunSteel(i,n,e,t){const o=e.Cq.linDataHelper,s=e.Cq.liningCalcHelper,d=e.Cq.liningBase,c=e.Pj.steelDataHelper,l=e.Pj.steelCalcHelper,_=e.Pj.steelBase;o.InitLinCommonData(n,!1,t),c.InitSteelCommonData(n),c.InitColorAndCoords(n,i),n.Property.ContourPoints.Cq.DicFirst=s.CalcPt3dColFirst(n),n.Property.ContourPoints.Cq.DicSecond=s.CalcPt3dColSecond(n),n.Property.ContourPoints.Cq.DicForth_Gq=s.CalcPt3dColForth(n),n.Property.ContourPoints.Cq.DicForth_Yg=s.CalcPt3dColForth_Yg(n),n.Property.ContourPoints.Cq.DicThird_Ylbx_Gq=s.CalcPt3dColThird_Ylbx_Gq(n),n.Property.ContourPoints.Cq.DicThird_Ylbx_Yg=s.CalcPt3dColThird_Ylbx_Yg(n),n.Property.ContourPoints.Pj.DicSteelFirst=l.CalcSteelFirst(n),n.Property.ContourPoints.Pj.DicSteelSecond=l.CalcSteelSecond(n),n.Property.ContourPoints.Pj.DicSteelCenter=l.CalcSteelCenter(n),o.CalcLinHotData(n),c.CalcSteelHotData(n),d.DrawSteelDrawingLining(n,t),_.SteelDraw(n,t)}}var W=(D=>(D[D.Qh=0]="Qh",D[D.Gq=1]="Gq",D[D.Gb=2]="Gb",D[D.Gbjb=3]="Gbjb",D[D.No=4]="No",D))(W||{});class w{static CnRound(i,n){const e=Math.pow(10,n);return Math.round(i*e+(i<0?-.5:.5))/e}static IsNumber(i){const n=/[^0-9.-]/,e=/[0-9]*[.][0-9]*[.][0-9]*/,t=/[0-9]*[-][0-9]*[-][0-9]*/,o=/^([-]|[.]|[-.]|[0-9])[0-9]*[.]*[0-9]+$/,s=/^([-]|[0-9])[0-9]*$/,d=new RegExp(`(${o.source})|(${s.source})`);return!n.test(i)&&!e.test(i)&&!t.test(i)&&d.test(i)}static ToDouble(i){return parseFloat(i)}}const ko=[["小图名","","r2","r3","r4","A1","A2","Agb","h1","h4","h5","h6","h7","h8","a ","b","d","b1-z","b1-y"],["","","拱腰内轮廓半径","","","拱顶圆心角的一半","r2圆心角","拱部范围角度","内轨至O3的高度","路基面至内轨面","水沟底至盖板顶的高度","施工缝距内轨的高度","内轨至r3上端点高度","内轨至侧沟盖板顶","断面中的a值,r2圆心与圆弧在断面中线同侧为正值","断面中线至r3,r4交点的水平距离","线间距(0加宽时)","左侧沟槽内侧边至断面中线距离","右侧沟槽边至断面中线距离"],["","","cm","cm","cm","度","度","度","cm","指钢轨处高度","cm","(cm,内轨以下为负)","(cm,内轨以下为负)","(cm,内轨以下为负)","0加宽时的a值","cm","cm","cm","cm"],["","","590","661.148","190.181","45","32.728","144","147.336","76.6","86","0","0","0","-30","426.545","400","420","420"]];let ye=class{static ReadDmcc(i,n){try{const e=new a.McDbXlsxTable;e.setFromArray(ko);const t=new kt;t.RadiusFirst2=w.ToDouble(e.getCellTextValue(n,2)),t.RadiusFirst3=w.ToDouble(e.getCellTextValue(n,3)),t.RadiusFirst4=w.ToDouble(e.getCellTextValue(n,4)),t.Angle1=w.ToDouble(e.getCellTextValue(n,5)),t.Angle2=w.ToDouble(e.getCellTextValue(n,6)),t.Angle_Gb=w.ToDouble(e.getCellTextValue(n,7)),t.H_ngToWidest=w.ToDouble(e.getCellTextValue(n,8)),t.H_ngToLjm=w.ToDouble(e.getCellTextValue(n,9)),t.H_sgdToGb=w.ToDouble(e.getCellTextValue(n,10)),t.H_ngToSgf=w.ToDouble(e.getCellTextValue(n,11)),t.H_ngToNearSgArcTopPoint=w.ToDouble(e.getCellTextValue(n,12)),t.H_ngToGb=w.ToDouble(e.getCellTextValue(n,13)),t.a=w.ToDouble(e.getCellTextValue(n,14)),t.b=w.ToDouble(e.getCellTextValue(n,15)),t.d=w.ToDouble(e.getCellTextValue(n,16)),t.b1_z=w.ToDouble(e.getCellTextValue(n,17)),t.b1_y=w.ToDouble(e.getCellTextValue(n,18));const o=i;return t.Wmax=w.ToDouble(o.getCellTextValue(n,5)),t.Wcur=w.ToDouble(o.getCellTextValue(n,6)),t.H_zkToZb=w.ToDouble(o.getCellTextValue(n,7)),t.H_ngToBqpt=w.ToDouble(o.getCellTextValue(n,8)),t}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码201 ReadDmcc","提示"),new kt}}static ReadZhcs(i,n){try{const e=i,t=new ne;return t.d1_Gqcqhd=w.ToDouble(e.getCellTextValue(n,9)),t.t1_Gqylbx=e.getCellTextValue(n,10).toString().trim(),t.m1_Gqczhd=w.ToDouble(e.getCellTextValue(n,11)),t.d2_Ygcqhd=w.ToDouble(e.getCellTextValue(n,12)),t.t2_Ygylbx=e.getCellTextValue(n,13).toString().trim(),t.m2_Ygczhd=w.ToDouble(e.getCellTextValue(n,14)),t.Dh_mgyxjj=w.ToDouble(e.getCellTextValue(n,15)),t.Dz_Mgzxjj=w.ToDouble(e.getCellTextValue(n,16)),t.Lg_Gbmgcd=w.ToDouble(e.getCellTextValue(n,17)),t.Lb_Bqmgcd=w.ToDouble(e.getCellTextValue(n,18)),t.Ly_Ygmgcd=w.ToDouble(e.getCellTextValue(n,19)),t.Bw_Wpjj=w.ToDouble(e.getCellTextValue(n,20)),t.Fwi_wpzj=w.ToDouble(e.getCellTextValue(n,21)),e.getCellTextValue(n,22).toString().trim()=="全环"?t.Wpbw=W.Qh:e.getCellTextValue(n,22).toString().trim()=="拱墙"?t.Wpbw=W.Gq:e.getCellTextValue(n,22).toString().trim()=="拱部"||e.getCellTextValue(n,22).toString().trim()=="拱部局部"?t.Wpbw=W.Gb:t.Wpbw=W.No,e.getCellTextValue(n,23).toString().trim()=="全环"?t.Mgbw=W.Qh:e.getCellTextValue(n,23).toString().trim()=="拱墙"?t.Mgbw=W.Gq:e.getCellTextValue(n,23).toString().trim()=="拱部"||e.getCellTextValue(n,23).toString().trim()=="拱部局部"?t.Mgbw=W.Gb:t.Mgbw=W.No,t}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码202 ReadZhcs","提示"),new ne}}static ReadJzcl(i,n){try{const e=i,t=new te;return t.Hntcl=e.getCellTextValue(n,24).toString().trim(),t.Phntcl=e.getCellTextValue(n,25).toString().trim(),t}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码203 ReadJzcl","提示"),new te}}static ReadSydl(i,n){try{const e=i,t=new ee;return t.Dl=e.getCellTextValue(n,48).toString().trim(),t}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码203 ReadSydl","提示"),new ee}}},wn=class{static ReadPjtk(i,n){try{const e=i,t=new oe;return t.Th1=e.getCellTextValue(n,26).toString().trim(),t.Tm1=e.getCellTextValue(n,27).toString().trim(),t.Th2=e.getCellTextValue(n,28).toString().trim(),t.Tm2=e.getCellTextValue(n,29).toString().trim(),t}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码204 ReadPjcs","提示"),new oe}}static ReadPjcs(i,n){try{const e=i,t=new ge;return t.DiameterN12=w.ToDouble(e.getCellTextValue(n,30).toString().trim()),t.DiameterN34=w.ToDouble(e.getCellTextValue(n,31).toString().trim()),t.SpacingN1234=w.ToDouble(e.getCellTextValue(n,32).toString().trim())/100,t.DiameterN5=w.ToDouble(e.getCellTextValue(n,33).toString().trim()),t.DiameterN678=w.ToDouble(e.getCellTextValue(n,34).toString().trim()),t.SpacingN678=w.ToDouble(e.getCellTextValue(n,35).toString().trim())/100,t.TProtectiveCover_W=w.ToDouble(e.getCellTextValue(n,36).toString().trim()),t.TProtectiveCover_N=w.ToDouble(e.getCellTextValue(n,37).toString().trim()),t}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码204 ReadPjcs","提示"),new ge}}};class dt{static textLength(i,n,e=1){if(i==null||i=="")return 0;const t=a.MxCpp.getCurrentMxCAD(),o=t.getDatabase().getCurrentlyTextStyleId(),s=new a.McDbText;s.textString=i,s.height=n,s.textStyleId=o,s.colorIndex=5,s.position=a.McGePoint3d.kOrigin;const d=t.drawEntity(s),{minPt:c,maxPt:l}=d.getMcDbEntity().getBoundingBox(),_=(l.x-c.y)*e;return v.erase(d),_}static TextLengthP3(i,n,e){if(i==null||i=="")return 0;const t=a.MxCpp.getCurrentMxCAD(),o=t.getDatabase().getCurrentlyTextStyleId(),s=new a.McDbText;s.textString=i,s.height=n,s.textStyleId=e||o;const d=t.drawEntity(s),{minPt:c,maxPt:l}=d.getMcDbEntity().getBoundingBox(),_=(l.x-c.y)*1;return v.Erase(s),_}static TextLengthP4(i,n,e,t){if(i==null||i=="")return 0;const o=a.MxCpp.getCurrentMxCAD(),s=o.getDatabase().getCurrentlyTextStyleId(),d=new a.McDbText;d.textString=i,d.height=n,d.textStyleId=e||s;const c=o.drawEntity(d),{minPt:l,maxPt:_}=c.getMcDbEntity().getBoundingBox(),h=(_.x-l.y)*(t||1);return v.Erase(d),h}static addTriangle(i,n){try{const e=[];return e.push(i),e.push(new a.McGePoint3d(i.x+n/2,i.y+n,0)),e.push(new a.McGePoint3d(i.x-n/2,i.y+n,0)),e.push(i),r.addPline4P(e,0,7,!1)}catch(e){return console.error("Failed to add triangle.",e),new a.McObjectId}}static AddTriangle3P(i,n,e){try{const t=[];return t.push(i),t.push(new a.McGePoint3d(i.x+n/2,i.y+n,0)),t.push(new a.McGePoint3d(i.x-n/2,i.y+n,0)),t.push(i),r.addPline5P(t,0,e,!1,!1)}catch(t){return console.error("画倒三角形失败:",t),new a.McObjectId}}static sumLength(i,n){let e=0;if(n<i.length){for(let t=0;t<n;t++)e+=i[t].x;return e}else return console.error("长度计算出错"),0}static sumHeight(i,n,e){let t=n;const o=i.length;let s=0,d=0;for(let c=0;c<o;c++)if(d+=i[c].x,t+=i[c].x*i[c].y/1e3,e<=d){s=c,i[c].y;break}return console.log(`m=${s}`),t-=i[s].x*i[s].y/1e3,t}static pt3dColMove(i,n){const e=[];if(i.length>0){const t=i[0];for(const o of i)e.push(new a.McGePoint3d(o.x-(t.x-n.x),o.y-(t.y-n.y),o.z-(t.z-n.z)))}return e}static ptInsertPointByCoorY(i,n){if(i.length===0)return new a.McGePoint3d(0,0,0);let e=-1;for(let t=0;t<i.length-1;t++)if(i[t].y<=n&&i[t+1].y>n||i[t].y>=n&&i[t+1].y<n){e=t;break}if(e===-1)return new a.McGePoint3d(0,0,0);{const t=i[e].x+(n-i[e].y)/(i[e+1].y-i[e].y)*(i[e+1].x-i[e].x);return new a.McGePoint3d(t,n,0)}}static ptInsertPointByCoorX(i,n){if(i.length===0)return new a.McGePoint3d(0,0,0);let e=-1;for(let t=0;t<i.length-1;t++)if(i[t].x<=n&&i[t+1].x>n||i[t].x>=n&&i[t+1].x<n){e=t;break}if(e===-1)return new a.McGePoint3d(0,0,0);{const t=i[e].y+(n-i[e].x)/(i[e+1].x-i[e].x)*(i[e+1].y-i[e].y);return new a.McGePoint3d(n,t,0)}}static ptInsertByTwoPointForX(i,n,e){let t=i,o=n;if(t.x>o.x&&(t=n,o=i),e<t.x||e>o.x)return new a.McGePoint3d(0,0,0);{const s=t.y+(e-t.x)/(o.x-t.x)*(o.y-t.y);return new a.McGePoint3d(e,s,0)}}static InputOrSlectDouble(i,n,e){return Pe(this,null,function*(){try{const t=prompt(`
|
|
3
|
+
${i}${n?` [${n}]`:""}`);if(t===null)return null;if(t.trim().toUpperCase()===n.toUpperCase())return console.log(`
|
|
4
|
+
${e}`),0;{const o=parseFloat(t);return isNaN(o)?(console.error("输入的不是有效的数值"),this.InputOrSlectDouble(i,n,e)):o}}catch(t){return console.error("输入或选择失败:",t),null}})}}const mt=class J{static Fram接头标示(i,n,e,t,o,s,d){const c=[],l=[],_=i,h=r.PolarPoint(_,n,t),P=r.PolarPoint(h,e,o),u=r.PolarPoint(r.MidPoint(h,P),Math.PI/2,d/2+.5);l.push(_),l.push(h),l.push(P);const p=r.addLeader2(l,!1),M=r.addText(u,s,3.5,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid);return c.push(...p),c.push(M),c}static Fram单元标示(i,n,e){const t=[],o=r.AddCircle(i,2,7),s=r.addText(i,e,3.5,0,.7,0,a.McDb.TextHorzMode.kTextMid,a.McDb.TextVertMode.kTextVertMid);return t.push(o),t.push(s),t}static AB_SteelJoint(i,n,e){const t=[],o=r.PolarPoint(r.PolarPoint(i,n,e/2+.2),n+Math.PI/2,.3),s=r.PolarPoint(r.PolarPoint(i,n,e/2+.2),n-Math.PI/2,.3),d=r.PolarPoint(r.PolarPoint(i,n+Math.PI/2,.3),n,-(e/2+.2)),c=r.PolarPoint(r.PolarPoint(i,n-Math.PI/2,.3),n,-(e/2+.2));return t.push(o),t.push(s),t.push(c),t.push(d),t.push(o),r.addPline5P(t,0,1,!0,!1)}static AB_SteelJoint大(i,n,e){i=new a.McGePoint3d(i.x,i.y,0);const t=[],o=r.PolarPoint(r.PolarPoint(i,n,e/2+.2),n+Math.PI/2,.3),s=r.PolarPoint(r.PolarPoint(i,n,e/2+.2),n-Math.PI/2,.3),d=r.PolarPoint(r.PolarPoint(i,n+Math.PI/2,.3),n,-(e/2+.2)),c=r.PolarPoint(r.PolarPoint(i,n-Math.PI/2,.3),n,-(e/2+.2)),l=r.PolarPoint(r.PolarPoint(i,n,e/2+.2),n+Math.PI/2,1),_=r.PolarPoint(r.PolarPoint(i,n,e/2+.2),n-Math.PI/2,1),h=r.PolarPoint(r.PolarPoint(i,n+Math.PI/2,1),n,-(e/2+.2)),P=r.PolarPoint(r.PolarPoint(i,n-Math.PI/2,1),n,-(e/2+.2));return t.push(o),t.push(s),t.push(c),t.push(d),t.push(o),t.push(l),t.push(_),t.push(P),t.push(h),t.push(l),r.addPline5P(t,0,1,!0,!1)}static C_SteelJoint1(i,n){const e=[],t=new a.McGePoint3d(i.x+1.1,i.y,0),o=new a.McGePoint3d(t.x,t.y+.77,.32492),s=new a.McGePoint3d(o.x-.12,o.y-.115,0),d=new a.McGePoint3d(t.x-.12,t.y+.07,0),c=r.PolarPoint(d,Math.PI,1.96),l=new a.McGePoint3d(c.x,c.y+.586,.32492),_=new a.McGePoint3d(l.x-.12,l.y+.115,0),h=new a.McGePoint3d(_.x,_.y-.77,0);return e.push(t),e.push(o),e.push(s),e.push(d),e.push(c),e.push(l),e.push(_),e.push(h),e.push(t),r.addPline5P(e,0,3,!0,!1)}static C_SteelJoint(i,n){const e=[],t=new a.McGePoint3d(i.x+n/2+.3,i.y,0),o=new a.McGePoint3d(t.x,t.y+.16,0),s=new a.McGePoint3d(o.x-n-.6,o.y,0),d=new a.McGePoint3d(s.x,s.y-.16,0);return e.push(t),e.push(o),e.push(s),e.push(d),e.push(t),r.addPline5P(e,0,1,!0,!1)}static D_SteelJoint(i,n,e){const t=[],o=r.PolarPoint(i,n,1.5),s=r.PolarPoint(o,e,.28),d=r.PolarPoint(s,Math.PI+n,3),c=r.PolarPoint(d,Math.PI+e,.28);return t.push(o),t.push(s),t.push(d),t.push(c),t.push(o),r.addPline4P(t,0,1,!1)}static Sjmg_Sp(i,n,e,t,o,s,d,c,l){const _=[];try{let h=Math.PI;Math.cos(t)>0&&(h=0);const P=dt.TextLengthP3(n,e),u=r.PolarPoint(i,t,40),p=r.PolarPoint(i,o,40),M=r.PolarPoint(i,h,P+10),g=r.PolarPoint(r.PolarPoint(i,h,10+P/2),Math.PI/2,e/2+.5),C=r.addLine3P(i,u,3),y=r.addLine3P(i,p,3),F=r.addLine3P(i,M,7),I=r.addText(g,n,e,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid),T=v.Mirror(C,new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,1,0),!1),R=v.Mirror(y,new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,1,0),!1),L=v.Mirror(F,new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,1,0),!1),f=v.Mirror(I,new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,1,0),!1);if(d?(_.push(C),_.push(y),_.push(F),_.push(I),T&&_.push(T),R&&_.push(R),L&&_.push(L),f&&_.push(f)):c?(_.push(C),_.push(y),_.push(F),_.push(I),T&&v.Erase(T),R&&v.Erase(R),L&&v.Erase(L),f&&v.Erase(f)):(T&&_.push(T),R&&_.push(R),L&&_.push(L),f&&_.push(f),v.Erase(C),v.Erase(y),v.Erase(F),v.Erase(I)),s){const G=r.PolarPoint(i,t/2,20),O=r.PolarPoint(i,o*9/10,20),b=r.add3PLineAngular(i,M,u,20,a.McGePoint3d.kOrigin,l,!1),H=r.add3PLineAngular(i,u,p,20,a.McGePoint3d.kOrigin,l,!1),x=new a.McGePoint3d(-i.x,i.y,0),j=new a.McGePoint3d(-G.x,G.y,0),N=new a.McGePoint3d(-O.x,O.y,0),k=new a.McGePoint3d(-M.x,M.y,0),Y=new a.McGePoint3d(-u.x,u.y,0),U=new a.McGePoint3d(-p.x,p.y,0),Q=r.add3PLineAngular(x,k,Y,20,a.McGePoint3d.kOrigin,l,!1),K=r.add3PLineAngular(x,Y,U,20,a.McGePoint3d.kOrigin,l,!1);d?(_.push(b),_.push(H),_.push(Q),_.push(K)):c?(_.push(b),_.push(H),v.Erase(Q),v.Erase(K)):(_.push(Q),_.push(K),v.Erase(b),v.Erase(H))}return _}catch(h){return _}finally{}}static Sjmg_Sz(i,n,e,t,o,s,d){const c=[];try{const l=dt.TextLengthP3(n,e),_=r.PolarPoint(i,Math.PI*3/2,30),h=r.PolarPoint(i,t,30),P=r.PolarPoint(i,o,30),u=r.addLine3P(i,h,3),p=r.addLine3P(i,P,3),M=r.addLine3P(i,_,7);let g=Math.PI;Math.cos(t)>0&&(g=0);const C=r.PolarPoint(r.PolarPoint(r.PolarPoint(i,g,10+l/2),Math.PI*3/2,10),Math.PI/2,e/2+.5),y=r.addText(C,n,e,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid);c.push(u),c.push(p),c.push(M),c.push(y);const F=v.Mirror(u,new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,1,0),!1);F&&c.push(F);const I=v.Mirror(p,new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,1,0),!1);I&&c.push(I);const T=v.Mirror(M,new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,1,0),!1);T&&c.push(T);const R=v.Mirror(y,new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,1,0),!1);if(R&&c.push(R),s){const L=r.PolarPoint(i,o*11/10,20),f=r.PolarPoint(i,o*9/10,20),G=r.add3PLineAngular(i,_,P,20,a.McGePoint3d.kOrigin,d,!1),O=r.add3PLineAngular(i,h,P,20,a.McGePoint3d.kOrigin,d,!1);c.push(G),c.push(O);const b=new a.McGePoint3d(-i.x,i.y,0),H=new a.McGePoint3d(-L.x,L.y,0),x=new a.McGePoint3d(-f.x,f.y,0),j=new a.McGePoint3d(-_.x,_.y,0),N=new a.McGePoint3d(-h.x,h.y,0),k=new a.McGePoint3d(-P.x,P.y,0);c.push(r.add3PLineAngular(b,j,k,20,a.McGePoint3d.kOrigin,d,!1)),c.push(r.add3PLineAngular(b,N,k,20,a.McGePoint3d.kOrigin,d,!1))}return c}catch(l){return c}finally{}}static CalHRB(i,n){J.InitJt_8g(i);const e=Math.floor((n-2*J.DistN4)/J.DistN3),t=e*J.Len_N3,o=4*n*it.Bar(J.DiaN12)/1e3,s=2*t*it.Bar(J.DiaN346)/1e3,d=2*4*J.Len_N4*it.Bar(J.DiaN346)/1e3;let c=0;return n-e*J.DistN3-2*J.DistN4>228&&(c=4*J.Len_N6*it.Bar(J.DiaN346)/1e3),o+s+d+c}static CalHPB(i,n){return J.InitJt_8g(i),Math.floor((n-2*J.DistN4)/J.DistN3)*J.Len_N5*it.Bar(J.DiaN5)/1e3}static InitJt_8g(i){switch(J.DistN4=120,i){case 120:J.Len_N3=961,J.Len_N4=252,J.Len_N5=608,J.Len_N6=384,J.DistN3=500;break;case 140:J.Len_N3=1064,J.Len_N4=274,J.Len_N5=824,J.Len_N6=404,J.DistN3=520;break;case 160:J.Len_N3=1163,J.Len_N4=288,J.Len_N5=924,J.Len_N6=432,J.DistN3=520;break;case 180:J.Len_N3=1271,J.Len_N4=308,J.Len_N5=1004,J.Len_N6=472,J.DistN3=540;break;case 200:J.Len_N3=1357,J.Len_N4=322,J.Len_N5=1084,J.Len_N6=500,J.DistN3=560,J.DiaN12="25";break}}static GzDm(i,n){const t=[],o=new a.McGePoint3d(i.x+.47,i.y,0),s=new a.McGePoint3d(o.x,o.y+.77,.32492),d=new a.McGePoint3d(s.x-.12,s.y-.115,0),c=new a.McGePoint3d(o.x-.12,o.y+.07,0),l=r.PolarPoint(c,Math.PI,1.96),_=new a.McGePoint3d(l.x,l.y+.586,.32492),h=new a.McGePoint3d(_.x-.12,_.y+.115,0),P=new a.McGePoint3d(h.x,h.y-.77,0);return t.push(o),t.push(s),t.push(d),t.push(c),t.push(l),t.push(_),t.push(h),t.push(P),t.push(o),r.addPline5P(t,0,3,!0,!1)}static MidYlbx(i){let n=0;try{const e=i.split(/[~~/]/);let t=0,o=0;for(let s=0;s<e.length;s++)if(w.IsNumber(e[s])){const d=parseFloat(e[s]);t=t+d,o++}return o!=0&&(n=Math.ceil(t/o)),n}catch(e){return-1}}static MaxYlbx(i){let n=0;try{const e=i.split(/[~~\/]/);for(let t=0;t<e.length;t++)if(w.IsNumber(e[t])){const o=parseFloat(e[t]);o>n&&(n=o)}return n}catch(e){return-1}}static V_dk(i){const n=Math.ceil(it.GJ_B(i)/10)+2,e=(20*10*(n+10)-n*5*20)/1e6,t=(7+3)/2*20*n/1e6;return e+2*t}static L_Uxgj(i){const n=it.GJ_H(i),e=it.GJ_B(i),t=n/Math.cos(20*Math.PI/180),o=e+54,s=n/Math.cos(40*Math.PI/180);return(t+o+s)/100}};mt.Len_N3=0,mt.Len_N4=0,mt.Len_N5=0,mt.Len_N6=0,mt.DistN3=0,mt.DistN4=0,mt.DiaN12="22",mt.DiaN346="14",mt.DiaN5="8";let jt=mt;var ut=(D=>(D[D.GZGJ=0]="GZGJ",D[D.GSGJ4=1]="GSGJ4",D[D.GSGJ3=2]="GSGJ3",D[D.HWGJ=3]="HWGJ",D))(ut||{});let Gn=class{static ReadGjtk(i,n){try{const e=i,t=new Wt;return t.Th1=e.getCellTextValue(n,38).toString().trim(),t.Tm1=e.getCellTextValue(n,39).toString().trim(),t.Th2=e.getCellTextValue(n,40).toString().trim(),t.Tm2=e.getCellTextValue(n,41).toString().trim(),t}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码204 ReadPjcs","提示"),new Wt}}static ReadGjcs(i,n){try{const e=i,t=new Yt;if(e.getCellTextValue(n,42).toString().trim().includes("/")){const o=e.getCellTextValue(n,42).toString().trim().split("/");t.GjXh1=o[0],t.GjXh2=o[1]}else t.GjXh1=e.getCellTextValue(n,42).toString().trim();return e.getCellTextValue(n,42).toString().trim().includes("I")?t.Gj_style=ut.GZGJ:e.getCellTextValue(n,42).toString().trim().includes("HW")?t.Gj_style=ut.HWGJ:e.getCellTextValue(n,42).toString().trim().includes("G")&&(t.Gj_style=ut.GSGJ4),e.getCellTextValue(n,43).toString().trim()=="拱墙"?t.IsGq=!0:e.getCellTextValue(n,43).toString().trim()=="全环"&&(t.IsGq=!1),t.Thick=S.GJ_H(t.GjXh1),t.GjXh2!=""&&(t.Thick2=S.GJ_H(t.GjXh2)),t.Thick_Cp=w.ToDouble(e.getCellTextValue(n,44).toString().trim()),t.AngleOfE=w.ToDouble(e.getCellTextValue(n,45).toString().trim()),t.Ylbx_Gq=w.ToDouble(e.getCellTextValue(n,46).toString().trim()),t.Len_Sjmg=w.ToDouble(e.getCellTextValue(n,47).toString().trim()),t.Ylbx_Yg=jt.MidYlbx(e.getCellTextValue(n,13).toString().trim()),t}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码204 ReadPjcs","提示"),new Yt}}};var ot=(D=>(D[D.Sx160to350=0]="Sx160to350",D[D.SL140=1]="SL140",D[D.SL160=2]="SL160",D[D.SL200=3]="SL200",D[D.SL4Center=4]="SL4Center",D[D.DL5Center=5]="DL5Center",D[D.Fzkd=6]="Fzkd",D))(ot||{});class X{static DicToPt3dcol(i){return i instanceof Map?Array.from(i.values()):Object.values(i)}static CalcArchLength(i,n,e,t,o){let s=0;return i<=2*n?s=i*t:i>2*n&&i<=2*(n+e)?s=2*n*t+(i-2*n)*o:console.error("拱部角度超过2段圆弧,请检查拱部角度范围是否正确?","提醒"),s}}class A{static getArcRadianByTwoPoint(i,n,e){const t=Math.sqrt(Math.pow(n.x-i.x,2)+Math.pow(n.y-i.y,2));return 2*Math.asin(t/2/e)}static getArcRadius(i,n){return i<1e-8||n<1e-8?0:(Math.pow(i/2,2)+Math.pow(i/n,2))/(i/n)}static getArcRadian(i,n){if(i<1e-8||n<1e-8)return 0;const e=(Math.pow(i/2,2)+Math.pow(i/n,2))/(i/n);return Math.sin(i/(2*e))*2}static getArcLength(i,n){return n*i}static getRadiusByArcCho(i,n){let e,t,o=n/2;do t=o,e=(1+(n-2*o*Math.sin(i/(2*o)))/(n-i*Math.cos(i/(2*o))))*o,o=e;while(Math.abs(e-t)>1e-10);return e}static getArcAngByArcCho(i,n){if(i-n<1e-6)return 0;let e,t,o=n/2;do t=o,e=(1+(n-2*o*Math.sin(i/(2*o)))/(n-i*Math.cos(i/(2*o))))*o,o=e;while(Math.abs(e-t)>1e-10);return i/e}static getAreaOfTriangleBySidelength(i,n,e){const t=(i+n+e)/2;return Math.sqrt(Math.abs(t*(t-i)*(t-n)*(t-e)))}static getAreaOfTriangleByPoint(i,n,e){if(i==n||i==e||n==e)return 0;{const t=Math.sqrt(Math.pow(n.x-i.x,2)+Math.pow(n.y-i.y,2)),o=Math.sqrt(Math.pow(n.x-e.x,2)+Math.pow(n.y-e.y,2)),s=Math.sqrt(Math.pow(e.x-i.x,2)+Math.pow(e.y-i.y,2)),d=(t+o+s)/2;return Math.sqrt(d*(d-t)*(d-o)*(d-s))}}static AreaOfSector(i,n){return i*i*n/2}static getAreaOfBow(i,n){return i*i*n/2-i*i*Math.cos(n/2)*Math.sin(n/2)}static AreaOfPolyline(i,n,e){let t=0;try{const o=new a.McDbPolyline;for(let d=0;d<i.length;d++){const c=i[d],l=n?c.z:0;o.addVertexAt(c,l,0,0)}o.isClosed=e;const s=a.MxCpp.getCurrentMxCAD().drawEntity(o);return!s||!s.isValid()?(console.warn("⚠️ 面积计算失败:实体无效"),0):(t=o.getArea().val,v.Erase(s),t)}catch(o){return t}}static getNormalAngleOfPoint(i,n){let e;{const t=n.getMcDbEntity(),o=t.getClosestPointTo(i,!1).val,s=t.getFirstDeriv(o).val;s.x<0&&s.y>0?e=Math.PI*3/2+s.angleTo1(a.McGeVector3d.kXAxis):s.x<0&&s.y<0||s.x>0&&s.y<0?e=Math.PI*3/2-s.angleTo1(a.McGeVector3d.kXAxis):e=Math.PI*3/2+s.angleTo1(a.McGeVector3d.kXAxis)}return e}static IntsOfLineToLine(i,n,e,t){let o=0,s=0,d=0;switch(i.x!=n.x&&(o=(n.y-i.y)/(n.x-i.x),d|=1),e.x!=t.x&&(s=(t.y-e.y)/(t.x-e.x),d|=2),d){case 0:return i.x==e.x?new a.McGePoint3d(0,0,0):new a.McGePoint3d(0,0,0);case 1:{const c=e.x,l=(i.x-c)*-o+i.y;return new a.McGePoint3d(c,l,0)}case 2:{const c=i.x,l=(e.x-c)*-s+e.y;return new a.McGePoint3d(c,l,0)}case 3:{if(o==s)return new a.McGePoint3d(0,0,0);const c=(o*i.x-s*e.x-i.y+e.y)/(o-s),l=o*c-o*i.x+i.y;return new a.McGePoint3d(c,l,0)}}return new a.McGePoint3d(0,0,0)}static IntsOfLineToLine2(i,n,e,t){let o=null,s="",d=0,c=0,l=0;i.x!=n.x&&(d=(n.y-i.y)/(n.x-i.x),l|=1),e.x!=t.x&&(c=(t.y-e.y)/(t.x-e.x),l|=2);let _,h;switch(l){case 0:i.x==e.x?s="两条直线互相重合,且平行于Y轴,无法计算交点。":s="两条直线互相平行,且平行于Y轴,无法计算交点。";break;case 1:_=e.x,h=(i.x-_)*-d+i.y,o=new a.McGePoint3d(_,h);break;case 2:_=i.x,h=(e.x-_)*-c+e.y,o=new a.McGePoint3d(_,h);break;default:if(d==c){s="两条直线平行或重合,无法计算交点。";break}_=(d*i.x-c*e.x-i.y+e.y)/(d-c),h=d*_-d*i.x+i.y,o=new a.McGePoint3d(_,h);break}return{Value:o,Message:s,Error:!0,Tag:[]}}static IntsOfLineToCircle(i,n,e,t){let o=[];const s=new a.McDbCircle(i.x,i.y,i.z,n),d=new a.McGeVector3d(t.x-e.x,t.y-e.y,t.z-e.z),c=new a.McDbLine;if(c.startPoint=new a.McGePoint3d(e.x-d.x*1e3,e.y-d.y*1e3,e.z-d.z*1e3),c.endPoint=new a.McGePoint3d(e.x+d.x*1e3,e.y+d.y*1e3,e.z+d.z*1e3),o=A.MyIntersect(c,s),o.length>2)console.error("直线与圆交点多于2个","错误");else if(o.length==1)console.error("直线与圆相切","提示");else if(o.length==0)return console.error("直线与圆无交点",o),[];return o}static IntsOfLineToCircle5P(i,n,e,t,o){let s=[];const d=new a.McDbCircle(i.x,i.y,i.z,n),c=new a.McGeVector3d(t.x-e.x,t.y-e.y,t.z-e.z),l=new a.McDbLine;if(l.startPoint=new a.McGePoint3d(e.x-c.x*1e3,e.y-c.y*1e3,e.z-c.z*1e3),l.endPoint=new a.McGePoint3d(e.x+c.x*1e3,e.y+c.y*1e3,e.z+c.z*1e3),s=A.MyIntersect(l,d),s.length==0)return console.error("直线与圆无交点,返回原点坐标","错误"),a.McGePoint3d.kOrigin;if(s.length==1)return s[0];try{switch(o){case"MaxX":{let _=s[0];return s.forEach(h=>{h.x>=_.x&&(_=h)}),_}case"MinX":{let _=s[0];return s.forEach(h=>{h.x<=_.x&&(_=h)}),_}case"MaxY":{let _=s[0];return s.forEach(h=>{h.y>=_.y&&(_=h)}),_}case"MinY":{let _=s[0];return s.forEach(h=>{h.y<=_.y&&(_=h)}),_}case"Near":return e.distanceTo(s[0])>e.distanceTo(s[1])?s[1]:s[0];case"Far":return e.distanceTo(s[0])>e.distanceTo(s[1])?s[0]:s[1];default:return s[0]}}catch(_){return console.error("计算交点失败:",_),new a.McGePoint3d}}static IntsOfLineToCurve(i,n,e,t){let o=[],s=new a.McGePoint3d;try{const d=r.AddXLineBy2Point(i,n),c=d.getMcDbEntity(),l=d.getMcDbEntity(),_=e.getMcDbEntity();o=A.MyIntersect(c,_);const h=c.getHandle();if(v.Erase(d),o.length==0)return console.error("直线与曲线无交点,返回原点坐标","错误"),console.warn("没有交点 错1 getHandle="+h),console.warn("没有交点 错2="+_.getHandle()),a.McGePoint3d.kOrigin;if(o.length>2)console.warn("有"+o.length.toFixed(0)+"个交点 错1="+h),console.warn("有"+o.length.toFixed(0)+"个交点 错2="+_.getHandle());else if(o.length==1)return o[0];switch(t){case"MaxX":return s=o[0],o.forEach(P=>{P.x>=s.x&&(s=P)}),s;case"MinX":return s=o[0],o.forEach(P=>{P.x<=s.x&&(s=P)}),s;case"MaxY":{let P=o[0];return o.forEach(u=>{u.y>=P.y&&(P=u)}),P}case"MinY":{let P=o[0];return o.forEach(u=>{u.y<=P.y&&(P=u)}),P}case"Near":return i.distanceTo(o[0])>i.distanceTo(o[1])?o[1]:o[0];case"Far":return i.distanceTo(o[0])>i.distanceTo(o[1])?o[0]:o[1];default:return o[0]}}catch(d){return console.error("IntsOfLineToCurve() 错误",d),s}}static IntsOfLineToCurve3P(i,n,e){let t=[];try{const o=new a.McDbLine;o.startPoint=i,o.endPoint=n;{const s=e.getMcDbEntity();t=A.MyIntersect(o,s)}return t}catch(o){return t}}static IntsOfCircleToCircle(i,n,e,t,o){let s=[],d=new a.McGePoint3d;try{i==e&&n==t&&console.error("两圆重合!","提示");const c=new a.McDbCircle(i.x,i.y,0,n),l=new a.McDbCircle(e.x,e.y,0,t);if(s=A.MyIntersect(c,l),s.length==0)return console.error("两圆无交点,返回原点坐标","错误"),a.McGePoint3d.kOrigin;switch(s.length==1&&console.error("两圆相切","提示"),o){case"MaxX":return d=s[0],s.forEach(_=>{_.x>=d.x&&(d=_)}),d;case"MinX":return d=s[0],s.forEach(_=>{_.x<=d.x&&(d=_)}),d;case"MaxY":return d=s[0],s.forEach(_=>{_.y>=d.y&&(d=_)}),d;case"MinY":return d=s[0],s.forEach(_=>{_.y<=d.y&&(d=_)}),d;default:return s[0]}}catch(c){return console.error("IntsOfCircleToCircle() 错误"),d}}static getTouchCircleCenter(i,n,e){try{const t=new a.McGeVector3d(e.x-n.x,e.y-n.y,e.z-n.z),o=new a.McGeVector3d(n.x-i.x,n.y-i.y,n.z-i.z),s=Math.tan(t.angleTo1(a.McGeVector3d.kXAxis)-Math.PI/2),d=Math.tan(o.angleTo1(a.McGeVector3d.kXAxis)),c=r.MidPoint(n,e),l=c.y-c.x*s,h=(i.y-i.x*d-l)/(s-d),P=s*h+l;return new a.McGePoint3d(h,P,0)}catch(t){return a.McGePoint3d.kOrigin}}static MyIntersect(i,n){const e=i.IntersectWith(n,a.McDb.Intersect.kOnBothOperands),t=[];return e.forEach(o=>{t.push(o)}),t}static IsVerctorSamedirection(i,n){return i.length()==0||n.length()==0?!1:i.angleTo1(n)<=1e-8}static CalcTextRotationAngle(i,n){const e=r.GetDipAngle(i,n);let t=e;return Math.PI/2<e&&e<=Math.PI?t=e+Math.PI:Math.PI<e&&e<=1.5*Math.PI&&(t=e-Math.PI),t}}class Ne{InitLinCommonData(i,n,e){const t=i.Data,o=i.Setting,s=i.LinData;s.Wmax=t.Cq.Dmcc.Wmax,s.Wcur=t.Cq.Dmcc.Wcur,s.w=s.Wcur/10,s.SizeRow=s.Wmax/10+1,s.H_ngToWidest=t.Cq.Dmcc.H_ngToWidest/10,s.H_ngToLjm=t.Cq.Dmcc.H_ngToLjm/10,s.H_sgdToGb=t.Cq.Dmcc.H_sgdToGb/10,s.H_ngToSgf=t.Cq.Dmcc.H_ngToSgf/10,s.H_ngToGb=t.Cq.Dmcc.H_ngToGb/10,s.a_0=t.Cq.Dmcc.a/10,s.b_0=t.Cq.Dmcc.b/10,s.d=t.Cq.Dmcc.d/10,s.b1_z_0=t.Cq.Dmcc.b1_z/10,s.b1_y_0=t.Cq.Dmcc.b1_y/10,s.H_zkToZb=t.Cq.Dmcc.H_zkToZb/10,s.H_ngToBqpt=t.Cq.Dmcc.H_ngToBqpt/10,s.railStyle=t.Cq.Cqtk.Gdlx,s.d1=t.Cq.Zhcs.d1_Gqcqhd/10,s.t1=t.Cq.Zhcs.t1_Gqylbx,s.m1=t.Cq.Zhcs.m1_Gqczhd/10,s.d2=t.Cq.Zhcs.d2_Ygcqhd/10,s.t2=t.Cq.Zhcs.t2_Ygylbx,s.ylbx_Gq=0,s.ylbx_Yg=0,n?(s.ylbx_Gq=t.Gj.Gjcs.Ylbx_Gq/10,s.ylbx_Yg=t.Gj.Gjcs.Ylbx_Yg/10):o.ChenQi.Tssz.YlbxMode==1&&(s.ylbx_Gq=jt.MidYlbx(s.t1)/10,s.ylbx_Yg=jt.MidYlbx(s.t2)/10,s.ylbx_Gq==-.1&&(s.ylbx_Gq=t.Gj.Gjcs.Ylbx_Gq/10)),s.m2=t.Cq.Zhcs.m2_Ygczhd/10,s.Dz=t.Cq.Zhcs.Dz_Mgzxjj/10,s.Ly=t.Cq.Zhcs.Ly_Ygmgcd/10,s.Bw=t.Cq.Zhcs.Bw_Wpjj/10,s.Fwi=t.Cq.Zhcs.Fwi_wpzj;const d=o.ChenQi.Sg;switch(e){case ot.Sx160to350:case ot.DL5Center:s.Z2c1g.b侧壁厚=9/10,s.Z2c1g.b侧壁盖板搭接宽=6/10,s.Z2c1g.b沟槽间壁厚1=9/10,s.Z2c1g.b沟槽间壁厚2=10/10,s.Z2c1g.b电缆槽搭接宽=6/10,s.Z2c1g.b_电力电缆盖板宽=44/10,s.Z2c1g.b_水沟盖板宽=38/10,s.Z2c1g.b_通信电缆盖板宽=30/10,s.Z2c1g.B_电力电缆槽宽=35/10,s.Z2c1g.B_水沟宽=30/10,s.Z2c1g.B_通信电缆槽宽=20/10,s.Z2c1g.H_电力电缆深=30/10,s.Z2c1g.H_通信电缆深=30/10,s.Z2c1g.H_盖板厚=6/10,s.Y2c1g.b侧壁厚=9/10,s.Y2c1g.b侧壁盖板搭接宽=6/10,s.Y2c1g.b沟槽间壁厚1=9/10,s.Y2c1g.b沟槽间壁厚2=10/10,s.Y2c1g.b电缆槽搭接宽=6/10,s.Y2c1g.b_电力电缆盖板宽=44/10,s.Y2c1g.b_水沟盖板宽=38/10,s.Y2c1g.b_通信电缆盖板宽=30/10,s.Y2c1g.B_电力电缆槽宽=35/10,s.Y2c1g.B_水沟宽=30/10,s.Y2c1g.B_通信电缆槽宽=20/10,s.Y2c1g.H_电力电缆深=30/10,s.Y2c1g.H_通信电缆深=30/10,s.Y2c1g.H_盖板厚=6/10,s.Zxsg.zxA内侧宽=60/10,s.Zxsg.zxB侧壁厚=25/10,s.Zxsg.zxC盖板搭接宽=8/10,s.Zxsg.zxD盖板宽=74/10,s.Zxsg.zxE盖板厚=8/10,s.Zxsg.zxF内侧深=72/10,s.Zxsg.zxG中心管圆心=25/10;break;case ot.SL4Center:case ot.SL160:s.Y1c1g.b侧壁厚=s.Z1c1g.b侧壁厚=9/10,s.Y1c1g.b侧壁盖板搭接宽=s.Z1c1g.b侧壁盖板搭接宽=6/10,s.Y1c1g.b沟槽间壁厚2=s.Z1c1g.b沟槽间壁厚2=11/10,s.Y1c1g.b电缆槽搭接宽=s.Z1c1g.b电缆槽搭接宽=11/10,s.Y1c1g.b_水沟盖板宽=s.Z1c1g.b_水沟盖板宽=40/10,s.Y1c1g.b_通信电缆盖板宽=s.Z1c1g.b_通信电缆盖板宽=37/10,s.Y1c1g.B_水沟宽=s.Z1c1g.B_水沟宽=30/10,s.Y1c1g.B_通信电缆槽宽=s.Z1c1g.B_通信电缆槽宽=25/10,s.Y1c1g.H_通信电缆深=s.Z1c1g.H_通信电缆深=20/10,s.Y1c1g.H_盖板厚=s.Z1c1g.H_盖板厚=6/10;break;case ot.SL200:{const c=d.Zcgc;s.Z1c1g.b侧壁厚=c.A/10,s.Z1c1g.b侧壁盖板搭接宽=c.B/10,s.Z1c1g.b沟槽间壁厚2=c.D/10,s.Z1c1g.b电缆槽搭接宽=c.F/10,s.Z1c1g.b_水沟盖板宽=c.J/10,s.Z1c1g.b_通信电缆盖板宽=c.I/10,s.Z1c1g.B_水沟宽=c.C/10,s.Z1c1g.B_通信电缆槽宽=c.E/10,s.Z1c1g.H_通信电缆深=c.G/10,s.Z1c1g.H_盖板厚=c.H/10;const l=d.Ycgc;s.Y1c1g.b侧壁厚=l.A/10,s.Y1c1g.b侧壁盖板搭接宽=l.B/10,s.Y1c1g.b沟槽间壁厚2=l.D/10,s.Y1c1g.b电缆槽搭接宽=l.F/10,s.Y1c1g.b_水沟盖板宽=l.J/10,s.Y1c1g.b_通信电缆盖板宽=l.I/10,s.Y1c1g.B_水沟宽=l.C/10,s.Y1c1g.B_通信电缆槽宽=l.E/10,s.Y1c1g.H_通信电缆深=l.G/10,s.Y1c1g.H_盖板厚=l.H/10}break}s.Angle1=t.Cq.Dmcc.Angle1,s.AngleGb=t.Cq.Dmcc.Angle_Gb,s.b1_z=s.b1_z_0+s.w/2,s.b1_y=s.b1_y_0+s.w/2,s.Radian_Arch1=r.Ang2Rad(s.Angle1)}CalcLinHotData(i){this.InitKeyPoint(i)}InitKeyPoint(i){const n=i.Property,e=i.LinData,t=r.addPline4P(X.DicToPt3dcol(n.ContourPoints.Cq.DicFirst),0,1,!0),o=r.addPline4P(X.DicToPt3dcol(n.ContourPoints.Cq.DicSecond),0,2,!0),s=r.addPline4P(X.DicToPt3dcol(n.ContourPoints.Cq.DicForth_Gq),0,3,!0),d=t.getMcDbEntity(),c=o.getMcDbEntity(),l=s.getMcDbEntity(),h=c.offsetCurves(-1,a.McGePoint3d.kOrigin).aryVal[0];h.colorIndex=20,n.AreaLength.Len_Cq_First=d.getLength().val,n.AreaLength.Len_Cq_Second=c.getLength().val,n.AreaLength.Len_Cq_Fourth=l.getLength().val,n.AreaLength.Len_Cq_SecondOffest10cm=h.getLength().val,n.AreaLength.Area_Cq_First=d.getArea().val,n.AreaLength.Area_Cq_Second=c.getArea().val,n.AreaLength.Area_Cq_Fourth=l.getArea().val,n.KeyPoint.pt施工缝左1=A.IntsOfLineToCurve(new a.McGePoint3d(0,e.H_ngToSgf,0),new a.McGePoint3d(1,e.H_ngToSgf,0),t,"MinX"),n.KeyPoint.pt施工缝右1=A.IntsOfLineToCurve(new a.McGePoint3d(0,e.H_ngToSgf,0),new a.McGePoint3d(1,e.H_ngToSgf,0),t,"MaxX"),i.Setting.ChenQi.Cqdm.Spsgf?(n.KeyPoint.pt施工缝左2=A.IntsOfLineToCurve(new a.McGePoint3d(0,e.H_ngToSgf,0),new a.McGePoint3d(1,e.H_ngToSgf,0),o,"MinX"),n.KeyPoint.pt施工缝右2=A.IntsOfLineToCurve(new a.McGePoint3d(0,e.H_ngToSgf,0),new a.McGePoint3d(1,e.H_ngToSgf,0),o,"MaxX")):(n.KeyPoint.pt施工缝左2=c.getClosestPointTo(n.KeyPoint.pt施工缝左1,!1).val,n.KeyPoint.pt施工缝右2=c.getClosestPointTo(n.KeyPoint.pt施工缝右1,!1).val),n.KeyPoint.ptStart左=A.IntsOfLineToCurve(new a.McGePoint3d(-e.b1_z,100,0),new a.McGePoint3d(-e.b1_z,-100,0),t,"MinY"),n.KeyPoint.ptEnd左=A.IntsOfLineToCurve(new a.McGePoint3d(-100,e.H_ngToGb,0),new a.McGePoint3d(100,e.H_ngToGb,0),t,"MinX"),n.KeyPoint.ptStart右=A.IntsOfLineToCurve(new a.McGePoint3d(e.b1_y,100,0),new a.McGePoint3d(e.b1_y,-100,0),t,"MinY"),n.KeyPoint.ptEnd右=A.IntsOfLineToCurve(new a.McGePoint3d(-100,e.H_ngToGb,0),new a.McGePoint3d(100,e.H_ngToGb,0),t,"MaxX"),v.Erase(t),v.Erase(o),v.Erase(s)}InitColorAndCoords(i,n){const e=i.Property;e.Color.Color_Jg=3,e.Color.Color_Sg=3,e.FrameCoords.Cq.ptBase1=n,e.FrameCoords.Cq.ptBase2=new a.McGePoint3d(n.x+450,n.y,0),e.FrameCoords.Cq.ptBase3=new a.McGePoint3d(n.x+900,n.y,0)}}class ve{constructor(){this.Lenth_Forth_Arch=0,this.Lenth_Forth_ArchWall=0,this.Lenth_Forth_Invert=0,this.Lenth_Forth_Out10cm_Arch=0,this.Lenth_Forth_Out10cm_ArchWall=0,this.Lenth_Forth_Out10cm_Invert=0,this.Lenth_Third_Arch=0,this.Lenth_Third_ArchWall=0,this.Lenth_Third_Invert=0,this.Lenth_Second_Arch=0,this.Lenth_Second_ArchWall_Fsb=0,this.Lenth_Second_ArchWall_Psg=0,this.Lenth_Second_Around=0,this.Lenth_Second_ArchWall_Cq=0,this.Lenth_Second_Invert_Cq=0,this.Lenth_First_Around=0,this.Lenth_First_ArchWall=0,this.Lenth_Offset10cm_ArchWall=0,this.Lenth_Offset10cm_Invert=0,this.Area_First=0,this.Area_Second=0,this.Area_Fourth=0,this.Area_SecondSgf=0,this.Area_FirstSgf=0,this.Volume_拱墙二衬=0,this.Volume_仰拱二衬=0,this.Area_Third=0,this.两侧施工缝厚度=0,this.纵向盲管垂直弯入侧沟长度=0,this.隧底竖向泄压孔每环长度=0,this.隧底盲管每环长度=0,this.隧底彩条布长度=0,this.泄水孔不入岩深度=0,this.侧沟至中心沟水平长=0,this.单侧侧沟内侧环长=0,this.中心水沟内侧环长=0}}class qe{}class zo extends Ne{InitLinCommonData(i,n,e){const t=i.Data,o=i.Setting,s=i.LinData;super.InitLinCommonData(i,n,e),s.RadiusFirst2=t.Cq.Dmcc.RadiusFirst2/10,s.RadiusFirst3=t.Cq.Dmcc.RadiusFirst3/10,s.RadiusFirst4=t.Cq.Dmcc.RadiusFirst4/10,s.Angle2=t.Cq.Dmcc.Angle2,s.Radian2=r.Ang2Rad(s.Angle2),s.H_ngToNearSgArcTopPoint=t.Cq.Dmcc.H_ngToNearSgArcTopPoint/10,s.Radian_Widest_inUp=Math.PI/2-s.Radian_Arch1-s.Radian2,s.Radian_Widest_inDown=Math.asin((s.H_ngToWidest-s.H_ngToNearSgArcTopPoint)/s.RadiusFirst3),s.Radian_Widest_inAll=s.Radian_Widest_inUp+s.Radian_Widest_inDown,s.a=s.a_0+s.w/2,s.b=s.b_0+s.w/2,s.RadiusFirst1=s.RadiusFirst2+s.a/Math.sin(s.Radian_Arch1);const d=s.a/Math.tan(s.Radian_Arch1),c=(s.RadiusFirst3-s.RadiusFirst2)*Math.sin(s.Radian_Widest_inUp);s.O1=new a.McGePoint3d(0,s.H_ngToWidest-d+c,0),s.O2_y=new a.McGePoint3d(s.a,s.O1.y+s.a/Math.tan(s.Radian_Arch1),0),s.O2_z=new a.McGePoint3d(-s.O2_y.x,s.O2_y.y,0),s.O3_y=r.PolarPoint(s.O2_y,Math.PI+s.Radian_Widest_inUp,s.RadiusFirst3-s.RadiusFirst2),s.O3_z=new a.McGePoint3d(-s.O3_y.x,s.O3_y.y,0),s.O4_1_y=r.PolarPoint(s.O3_y,-s.Radian_Widest_inDown,s.RadiusFirst3-s.RadiusFirst4),s.O4_1_z=new a.McGePoint3d(-s.O4_1_y.x,s.O4_1_y.y,s.O4_1_y.z);const l=s.O4_1_y.y-Math.sqrt(Math.pow(s.RadiusFirst4,2)-Math.pow(s.b-s.O4_1_y.x,2)),_=new a.McGePoint3d(s.b,l,0),h=r.PolarPoint(s.O3_y,-s.Radian_Widest_inDown,s.RadiusFirst3),P=_.distanceTo(h);s.Radian_NearSgArc内=2*Math.asin(P/2/s.RadiusFirst4),s.Radian_Invert内=2*Math.PI-s.Radian_Arch1*2-s.Radian2*2-s.Radian_Widest_inAll*2-s.Radian_NearSgArc内*2,s.O_Invert=new a.McGePoint3d(0,s.O4_1_y.x/Math.tan(s.Radian_Invert内/2)+s.O4_1_y.y,0),s.RadiusFirst5=s.O_Invert.distanceTo(_),s.RadiusSecond1=s.RadiusFirst1+s.d1,s.RadiusSecond2=s.RadiusFirst2+s.d1,s.RadiusSecond3=s.RadiusFirst3+s.d1,s.RadiusSecond5=s.RadiusFirst5+s.d2;const u=r.PolarPoint(s.O4_1_y,-s.Radian_Widest_inDown-s.Radian_NearSgArc内,s.RadiusFirst4+s.d2),p=r.PolarPoint(s.O4_1_y,-s.Radian_Widest_inDown,s.RadiusFirst4+s.d1),M=new a.McGeVector3d(p.x-u.x,p.y-u.y),g=Math.tan(M.angleTo1(a.McGeVector3d.kXAxis)-Math.PI/2),C=Math.tan(-s.Radian_Widest_inDown),y=new a.McGePoint3d((u.x+p.x)/2,(u.y+p.y)/2,0),F=y.y-y.x*g,T=(s.O3_y.y-s.O3_y.x*C-F)/(g-C),R=g*T+F;s.O4_2_y=new a.McGePoint3d(T,R,0),s.O4_2_z=new a.McGePoint3d(-s.O4_2_y.x,s.O4_2_y.y,0),s.Radian_Invert外=s.Radian_Invert内,s.RadiusSecond4=u.distanceTo(s.O4_2_y),s.Radian_NearSgArc外=2*Math.asin(u.distanceTo(p)/2/s.RadiusSecond4),A.getArcRadianByTwoPoint(u,p,s.RadiusSecond4),s.RadiusThird1=s.RadiusSecond1+s.ylbx_Gq,s.RadiusThird2=s.RadiusSecond2+s.ylbx_Gq,s.RadiusThird3=s.RadiusSecond3+s.ylbx_Gq,s.RadiusThird4=s.RadiusSecond4+s.ylbx_Yg,s.RadiusThird5=s.RadiusSecond5+s.ylbx_Yg,s.RadiusFourth1=s.RadiusThird1+s.m1,s.RadiusFourth2=s.RadiusThird2+s.m1,s.RadiusFourth3=s.RadiusThird3+s.m1,s.RadiusFourth4=s.RadiusThird4+s.m2,s.RadiusFourth5=s.RadiusThird5+s.m2,o.ChenQi.Cqdm.Zbdycqlk?s.Radian_Widest_outDown=Math.asin(s.H_zkToZb/s.RadiusSecond3):s.Radian_Widest_outDown=Math.asin(s.H_zkToZb/(s.RadiusSecond3+s.m1)),s.Radian_Widest_outAll=s.Radian_Widest_inUp+s.Radian_Widest_outDown;const L=.02;s.railStyle=="有砟"?(s.dblHeight1=w.CnRound(s.H_ngToLjm-((s.b1_y_0+s.b1_z_0-s.d)/2-7.175)*L,1),s.dblHeight2=w.CnRound(s.dblHeight1+(s.b1_y_0+s.b1_z_0)/2*L,1),s.dblGradOfInvertFilling=(s.dblHeight2-s.dblHeight1)/(s.b1_y+s.b1_z-o.ChenQi.Sg.Zxsg.A/10+2*o.ChenQi.Sg.Zxsg.B/10)*2):s.railStyle=="无砟"&&(s.dblHeight1=s.H_ngToLjm,s.dblHeight2=s.H_ngToLjm+(s.d+s.w-28-o.ChenQi.Sg.Zxsg.A/10-2*o.ChenQi.Sg.Zxsg.C/10-.2)/2*L,s.dblGradOfInvertFilling=L),s.RailCenterOffset=(s.b1_y-s.b1_z)/2;const f=[];for(let G=0;G<s.SizeRow;G++){const O=Math.asin((s.H_ngToWidest-s.H_ngToGb)/s.RadiusFirst3),b=s.O2_y.x-s.O3_y.x,H=s.O2_y.y-s.O3_y.y,x=s.O_Invert.y-s.RadiusFirst5*Math.cos(s.Radian_Invert内/2),j=new qe;j.W=G,j.lineSpace=s.d+G,j.b1=s.RadiusFirst3+s.a_0+G/2-b,j.b2=s.RadiusFirst3*Math.cos(O)+s.a_0+G/2-b,j.a=G/2+s.a_0,j.RadiusFirst_Arch=s.RadiusFirst2+j.a/Math.sin(s.Radian_Arch1),j.RadiusSecond_Arch=j.RadiusFirst_Arch+s.d1,j.RadiusFirst_Invert=(s.b_0+G/2)/Math.sin(s.Radian_Invert内/2),j.RadiusSecond_Invert=j.RadiusFirst_Invert+s.d2,j.H_ngToArchCenter=s.H_ngToWidest+H-j.a/Math.tan(s.Radian_Arch1),j.H_ngToFirstInvertBottom=Math.abs(x-j.RadiusFirst_Invert*(1-Math.cos(s.Radian_Invert内/2))),j.H_ngToInvertCenter=j.RadiusFirst_Invert-j.H_ngToFirstInvertBottom,j.h=j.RadiusFirst_Arch+j.H_ngToArchCenter,j.H=j.h+s.d1+s.d2+s.m1+s.m2+j.H_ngToFirstInvertBottom+s.ylbx_Gq+s.ylbx_Yg,j.B=2*(j.b1+s.d1+s.m1+s.ylbx_Gq),f.push(j)}s.Dms=f,s.RadiusFirst1==s.RadiusFirst2&&s.RadiusFirst4==s.RadiusFirst1&&s.RadiusFirst5==s.RadiusFirst1?s.IsCircular=!0:s.IsCircular=!1}CalcLinHotData(i){super.InitKeyPoint(i),i.Data;const n=i.Setting,e=i.Property,t=i.LinData,o=[];e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y1");const s=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y2"),d=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y3"),c=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y4"),l=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y5"),_=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z5"),h=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z4"),P=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z3"),u=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z2");e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z1");const p=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y2"),M=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y3"),g=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y4"),C=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y5"),y=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z5"),F=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z4"),I=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z3"),T=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z2"),R=e.ContourPoints.Cq.DicThird_Ylbx_Gq.get("ptThird_Y2"),L=e.ContourPoints.Cq.DicThird_Ylbx_Gq.get("ptThird_Y3"),f=e.ContourPoints.Cq.DicFirst.get("ptFirst_Y2"),G=e.ContourPoints.Cq.DicFirst.get("ptFirst_Y3"),O=e.ContourPoints.Cq.DicFirst.get("ptFirst_Y4"),b=e.ContourPoints.Cq.DicFirst.get("ptFirst_Y5"),H=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z5"),x=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),j=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z3"),N=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),k=e.ContourPoints.Cq.DicForth_Yg.get("pt5th1"),Y=e.ContourPoints.Cq.DicForth_Yg.get("pt5th2"),U=e.ContourPoints.Cq.DicForth_Yg.get("pt5th3"),Q=e.ContourPoints.Cq.DicForth_Yg.get("pt5th4"),K=A.getArcRadianByTwoPoint(new a.McGePoint3d(U.x,U.y,0),new a.McGePoint3d(Q.x,Q.y,0),t.RadiusFourth4),B=r.Ang2Rad(t.AngleGb);for(let Z=0;Z<t.SizeRow;Z++){const V=t.Dms[Z],q=new ve,z=2*t.Radian_Arch1*(V.RadiusSecond_Arch+t.m1+t.ylbx_Gq),$=2*t.Radian2*t.RadiusFourth2,nt=2*t.Radian_Widest_outAll*t.RadiusFourth3,ct=2*t.RadiusFourth4*K,st=t.Radian_Invert外*(V.RadiusSecond_Invert+t.m2),et=2*((t.H_ngToWidest-t.RadiusFourth3*Math.sin(t.Radian_Widest_outDown)-s.y)/Math.cos(t.Radian_Widest_outDown)),pt=2*t.Radian_Arch1*V.RadiusSecond_Arch,ht=2*t.Radian2*t.RadiusSecond2,Mt=2*t.Radian_Widest_inAll*t.RadiusSecond3,wt=2*t.Radian_NearSgArc外*t.RadiusSecond4,Dt=V.RadiusSecond_Invert*t.Radian_Invert外,Gt=2*t.Radian_Arch1*V.RadiusFirst_Arch,lt=2*t.Radian2*t.RadiusFirst2,yt=2*t.Radian_Widest_inAll*t.RadiusFirst3,Ft=2*t.Radian_NearSgArc内*t.RadiusFirst4,xt=V.RadiusFirst_Invert*t.Radian_Invert内,It=2*t.Radian_Arch1*(V.RadiusSecond_Arch+t.ylbx_Gq);2*t.Radian2*(t.RadiusSecond2+t.ylbx_Gq),2*t.Radian_Widest_inAll*(t.RadiusSecond3+t.ylbx_Gq),2*((t.H_ngToWidest-(t.RadiusSecond3+t.ylbx_Gq)*Math.sin(t.Radian_Widest_outDown)-s.y)/Math.cos(t.Radian_Widest_outDown)),q.Lenth_Forth_Arch=X.CalcArchLength(B,t.Radian_Arch1,t.Radian2,V.RadiusSecond_Arch+t.m1+t.ylbx_Gq,t.RadiusFourth2),q.Lenth_Forth_ArchWall=z+$+nt+et;const gt=s.x-Q.x;q.Lenth_Forth_Invert=2*gt+ct+st,q.Lenth_Third_Arch=X.CalcArchLength(B,t.Radian_Arch1,t.Radian2,V.RadiusSecond_Arch+t.ylbx_Gq,t.RadiusThird2);const Ot=(t.Radian_Arch1*(V.RadiusFirst_Arch+t.d1+t.ylbx_Gq)+t.Radian2*(t.RadiusFirst2+t.d1+t.ylbx_Gq))*2,ft=t.Radian_Widest_outAll*t.RadiusThird3*2,bt=R.distanceTo(new a.McGePoint3d(L.x,L.y,0))*2;q.Lenth_Third_ArchWall=Ot+ft+bt,q.Lenth_Second_Arch=X.CalcArchLength(B,t.Radian_Arch1,t.Radian2,V.RadiusSecond_Arch,t.RadiusSecond2);const Ct=t.H_ngToGb-n.ChenQi.Cqsz.Fps.JsgdValue/10,Kt=A.IntsOfLineToCircle5P(t.O4_2_y,t.RadiusSecond4,new a.McGePoint3d(0,Ct,0),new a.McGePoint3d(1,Ct,0),"MaxX"),_e=2*A.getArcRadianByTwoPoint(M,Kt,t.RadiusSecond4)*t.RadiusSecond4;q.Lenth_Second_ArchWall_Fsb=_e+pt+ht+Mt,q.Lenth_Second_ArchWall_Psg=q.Lenth_Second_ArchWall_Fsb-.5,q.Lenth_Second_Around=pt+ht+Mt+wt+Dt,q.Lenth_Second_ArchWall_Cq=It+ht+Mt,q.Lenth_Second_Invert_Cq=q.Lenth_Second_Around-q.Lenth_Second_ArchWall_Cq,q.Lenth_First_Around=Gt+lt+yt+Ft+xt,q.Lenth_First_ArchWall=Gt+lt+yt;const Ht=1;q.Lenth_Offset10cm_ArchWall=(t.Radian_Arch1*(V.RadiusSecond_Arch-Ht)+t.Radian2*(t.RadiusSecond2-Ht)+t.Radian_Widest_inAll*(t.RadiusSecond3-Ht))*2,q.Lenth_Offset10cm_Invert=2*(t.Radian_NearSgArc外*(t.RadiusSecond4-Ht))+(V.RadiusSecond_Invert-Ht)*t.Radian_Invert外;const he=A.getAreaOfBow(V.RadiusFirst_Arch,2*t.Radian_Arch1),qt=2*A.getAreaOfBow(t.RadiusFirst2,t.Radian2),Xt=2*A.getAreaOfBow(t.RadiusFirst3,t.Radian_Widest_inAll),an=2*A.getAreaOfBow(t.RadiusFirst4,t.Radian_NearSgArc内),cn=A.getAreaOfBow(V.RadiusFirst_Invert,t.Radian_Invert内),dn=b.x-H.x-t.w+Z,Ae=O.x-x.x-t.w+Z,Le=G.x-j.x-t.w+Z,ln=f.x-N.x-t.w+Z,_n=b.y-O.y,hn=O.y-G.y,xe=G.y-f.y,Pn=(dn+Ae)*_n/2,un=(Ae+Le)*hn/2,$i=(Le+ln)*xe/2,pn=he+qt+Xt+Pn+un,ts=+an+cn+ +$i;q.Area_First=pn+ts;const es=A.getAreaOfBow(V.RadiusSecond_Arch,2*t.Radian_Arch1),ns=2*A.getAreaOfBow(t.RadiusSecond2,t.Radian2),os=2*A.getAreaOfBow(t.RadiusSecond3,t.Radian_Widest_inAll),is=2*A.getAreaOfBow(t.RadiusSecond4,t.Radian_NearSgArc外),ss=A.getAreaOfBow(V.RadiusSecond_Invert,t.Radian_Invert外),rs=C.x-y.x-t.w+Z,Jn=g.x-F.x-t.w+Z,Qn=M.x-I.x-t.w+Z,as=p.x-T.x-t.w+Z,cs=C.y-g.y,ds=g.y-M.y,ls=M.y-p.y,_s=(rs+Jn)*cs/2,hs=(Jn+Qn)*ds/2,Ps=(Qn+as)*ls/2,Mn=es+ns+os+_s+hs,us=is+ss+Ps;q.Area_Second=Mn+us;const ps=A.getAreaOfBow(V.RadiusFirst_Arch+t.d1+t.m1+t.ylbx_Gq,2*t.Radian_Arch1),Ms=2*A.getAreaOfBow(t.RadiusSecond2+t.m1+t.ylbx_Gq,t.Radian2),gs=2*A.getAreaOfBow(t.RadiusSecond3+t.m1+t.ylbx_Gq,t.Radian_Widest_outDown+t.Radian_Widest_inUp),Cs=2*A.getAreaOfBow(t.RadiusFourth4,K),Ss=A.getAreaOfBow(V.RadiusSecond_Invert+t.m2,t.Radian_Invert外),Ds=l.x-_.x-t.w+Z,Kn=c.x-h.x-t.w+Z,Xn=d.x-P.x-t.w+Z,ys=s.x-u.x-t.w+Z,Is=_.y-h.y,Ts=h.y-P.y,Fs=P.y-u.y,Rs=Q.x-k.x-t.w+Z,ws=U.x-Y.x-t.w+Z,Gs=Q.y-U.y,fs=(Ds+Kn)/2*Is,As=(Kn+Xn)/2*Ts,Ls=(Xn+ys)/2*Fs,xs=(Rs+ws)/2*Gs,bs=ps+Ms+gs+Cs+Ss+fs+As+Ls+xs;q.Area_Fourth=bs,q.Area_SecondSgf=Mn,q.Area_FirstSgf=pn;const ms=(M.x-I.x-t.w+Z+(G.x-j.x-t.w+Z))*(j.y-M.y)/2,Os=(M.y-t.H_ngToSgf)*t.d1*2;q.Volume_拱墙二衬=Mn-pn-ms-Os,q.Volume_仰拱二衬=q.Area_Second-q.Area_First-q.Volume_拱墙二衬,q.两侧施工缝厚度=e.KeyPoint.pt施工缝左1.distanceTo(e.KeyPoint.pt施工缝左2)+e.KeyPoint.pt施工缝右1.distanceTo(e.KeyPoint.pt施工缝右2);const Hs=t.b1_y+t.Z2c1g.b侧壁厚+t.Z2c1g.b侧壁盖板搭接宽+t.Z2c1g.b沟槽间壁厚1+t.Z2c1g.B_电力电缆槽宽+t.Z2c1g.B_水沟宽;r.PolarPoint(d,Math.PI*3/2-t.Radian_Widest_outDown,d.y-Ct).x;const js=A.IntsOfLineToCircle5P(t.O4_2_y,t.RadiusSecond4,new a.McGePoint3d(0,-Ct,0),new a.McGePoint3d(1,-Ct,0),"MaxX").x;q.纵向盲管垂直弯入侧沟长度=js-Hs,q.泄水孔不入岩深度=q.纵向盲管垂直弯入侧沟长度+t.m1,q.单侧侧沟内侧环长=t.Y1c1g.B_水沟宽+(t.H_sgdToGb-t.Y1c1g.H_盖板厚)*2,q.中心水沟内侧环长=t.Zxsg.zxF内侧深*2+t.Zxsg.zxA内侧宽,o.push(q)}t.hotDatas=o}InitColorAndCoords(i,n){super.InitColorAndCoords(i,n);const e=i.Property;e.FrameCoords.Cq.ptDm_OriginTarget=new a.McGePoint3d(n.x+135,n.y-145,0),e.FrameCoords.Cq.ptNote_TopLeft1=new a.McGePoint3d(n.x+260,n.y-110,0),e.FrameCoords.Cq.ptTable_DmccTopMid=new a.McGePoint3d(n.x+230,n.y-30,0),e.FrameCoords.Cq.ptTable_QuantiyTopMid=new a.McGePoint3d(e.FrameCoords.Cq.ptBase2.x+220,e.FrameCoords.Cq.ptBase2.y-25,0),e.FrameCoords.Cq.ptTable_ZhcsTopMid=new a.McGePoint3d(e.FrameCoords.Cq.ptBase1.x+130,e.FrameCoords.Cq.ptBase1.y-230,0)}}class se{constructor(i,n,e,t){this.topRow=i,this.leftColumn=n,this.bottomRow=e,this.rightColumn=t}}class m{static ObjIdColAdd(i,n){throw new Error("Method not implemented.")}static MyIntersectWinth(i,n){const e=[];try{const t=i.getMcDbEntity(),o=n.getMcDbEntity();return!t||!o||typeof t.IntersectWith!="function"?(console.warn("一个或两个对象无效或不支持 intersectWith"),e):(t.IntersectWith(o,a.McDb.Intersect.kOnBothOperands).forEach(d=>{e.push(d)}),e.length==0&&(console.warn("错1="+t.getHandle()),console.warn("错2="+o.getHandle())),e)}catch(t){console.error("交点计算失败:",t)}return e}static CenterPoint(i){const n=new a.McGePoint3dArray;n.append(new a.McGePoint3d(i.x-.25,i.y,1)),n.append(new a.McGePoint3d(i.x+.25,i.y,1)),n.append(new a.McGePoint3d(i.x-.25,i.y,1));let e=[];return n.forEach(t=>{e.push(t)}),r.addPline(e,.5,.5,7,!0,!1)}static CenterPoint4P(i,n,e,t){const o=[],s=new a.McGePoint3dArray;s.append(new a.McGePoint3d(i.x-.25,i.y,1)),s.append(new a.McGePoint3d(i.x+.25,i.y,1)),s.append(new a.McGePoint3d(i.x-.25,i.y,1));let d=[];return s.forEach(c=>{d.push(c)}),o.push(r.addPline(d,.5,.5,7,!0,!1)),o.push(r.addText(n,e,t,0,.7,0,0,0)),o}static CenterPoint3P(i,n,e){const t=[];return t.push(new a.McGePoint3d(i.x-n,i.y,1)),t.push(new a.McGePoint3d(i.x+n,i.y,1)),t.push(new a.McGePoint3d(i.x-n,i.y,1)),r.addPline(t,2*n,2*n,e,!0,!1)}static JoinIdCol(i,n){return console.log("合并ID集合: 原长度="+i.length+", 新增长度="+n.length),i.push(...n),console.log("合并后长度:",i.length),i}static Join3dCollection(i,n){return i.push(...n),i}static MergeTable(i,n){if(!(n!=null&&n.length))return;const e=n.map(t=>({row:t.topRow,col:t.leftColumn,rowspan:t.bottomRow-t.topRow+1,colspan:t.rightColumn-t.leftColumn+1}));i.setMergeCells(e)}static AutoMergeRowTable(i){const n=[];for(let e=0;e<i.colCount;e++){let t=0;for(let o=1;o<=i.rowCount;o++){if(o<i.rowCount){const s=i.getCellTextValue(o,e),d=i.getCellTextValue(t,e);if(s===d)continue}o-t>1&&n.push(new se(t,e,o-1,e)),t=o}}n.length>0&&m.MergeTable(i,n)}static TableTransposition(i,n,e){var l;const t=i.rowCount,o=i.colCount,s=[];for(let _=0;_<o;_++){const h=[];for(let P=0;P<t;P++)h.push(i.getCellValue(P,_));s.push(h)}const d=new a.McDbXlsxTable;d.styleName="STANDARD";const c=(l=i.getMergeCells())!=null?l:[];if(c.length>0){const _=c.map(h=>({row:h.col,col:h.row,rowspan:h.colspan,colspan:h.rowspan}));d.setMergeCells(_)}return d.setFromArray(s),d}static PointMirrorY(i){return new a.McGePoint3d(-i.x,i.y,0)}static PointMirrorX(i){return new a.McGePoint3d(i.x,-i.y,0)}static NearPoint(i,n){let e=n[0];return n.forEach(t=>{i.distanceTo(t)<i.distanceTo(e)&&(e=t)}),e}static Sort3dBycurve(i,n){const e=[...i];return e.sort((t,o)=>o.y-t.y),e.sort((t,o)=>t.x-o.x),e}static Heading1(i,n,e){const t=[];try{const o=dt.textLength(n,4.5,1),s=dt.textLength(e,3.5,1),d=Math.max(o,s)+3,c=new a.McGePoint3d(i.x-d/2,i.y,0),l=r.PolarPoint(c,0,d),_=r.PolarPoint(c,3*Math.PI/2,1),h=r.PolarPoint(_,0,d);if(t.push(r.addLine3P(c,l,3)),t.push(r.addLine3P(_,h,7)),n!==""){const P=r.PolarPoint(r.MidPoint(c,l),Math.PI/2,4);t.push(r.addText(P,n,4.5,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid))}if(e!==""){const P=r.PolarPoint(r.MidPoint(c,l),3*Math.PI/2,4);t.push(r.addText(P,e,3.5,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid))}return t}catch(o){return console.error("⚠️ Heading1 标注绘制失败:",o),t}}static Heading(i,n,e){const t=[];try{const o=dt.textLength(n,4.5,1),s=dt.textLength(e,3.5,1),d=Math.max(o,s)+3,c=i,l=r.PolarPoint(c,0,d),_=r.PolarPoint(c,Math.PI*3/2,1),h=r.PolarPoint(_,0,d),P=r.PolarPoint(r.MidPoint(c,l),Math.PI/2,4),u=r.PolarPoint(r.MidPoint(c,l),Math.PI*3/2,4);return t.push(r.addLine3P(c,l,3)),t.push(r.addLine3P(_,h,7)),t.push(r.addText(P,n,4.5,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),t.push(r.addText(u,e,3.5,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),t}catch(o){return t}finally{}}static addTriangle(i,n,e){try{const t=new a.McGePoint3d(i.x+n/2,i.y+n,0),o=new a.McGePoint3d(i.x-n/2,i.y+n,0),s=[i,t,o,i];return r.addPline5P(s,e,7,!1,!1)}catch(t){return console.error("❌ 添加倒三角失败:",t),null}}static addTriangle2P(i,n){return this.addTriangle(i,n,7)}static ReinforcementBy2P(i,n){const e=[];try{const t=r.GetDipAngle(i,n);let o,s;t>=Math.PI/2&&t<=Math.PI*3/2?(o=t+Math.PI/2,s=t+Math.PI):(o=t-Math.PI/2,s=t);const d=.25,c=r.PolarPoint(r.PolarPoint(i,t,d),t+Math.PI/2,d),l=r.PolarPoint(c,t,.4),_=new a.McGePoint3d(c.x,c.y,1),h=r.PolarPoint(r.PolarPoint(i,t,d),t-Math.PI/2,d),P=r.PolarPoint(r.PolarPoint(n,t+Math.PI,d),t-Math.PI/2,d),u=new a.McGePoint3d(P.x,P.y,1),p=r.PolarPoint(r.PolarPoint(n,t+Math.PI,d),t+Math.PI/2,d),M=r.PolarPoint(p,t+Math.PI,.4),g=[l,_,h,u,p,M],C=r.PolarPoint(i,t,d),y=r.PolarPoint(n,t+Math.PI,d),F=new a.McGePoint3d(C.x+d/2,C.y,1),I=new a.McGePoint3d(C.x-d/2,C.y,1),T=new a.McGePoint3d(y.x+d/2,y.y,1),R=new a.McGePoint3d(y.x-d/2,y.y,1),L=[F,I,F],f=[T,R,T],G=r.addPline5P(g,0,3,!0,!1),O=r.addPline5P(L,d,3,!0,!1),b=r.addPline5P(f,d,3,!0,!1);return e.push(G),e.push(O),e.push(b),e}catch(t){return console.error("Failed to add reinforcement:",t),e}}static CreateBlock(i){const n=new Date,t=`TK${Math.floor((n.getTime()-new Date(n.getFullYear(),0,0).getTime())/864e5)}${n.getHours()}${n.getMinutes()}${n.getMilliseconds()}`;r.CreateAndInsertBlock(t,new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,0,0),i,!0)}}class rt{static CirclePolyline(i,n,e){const t=[];return t.push(new a.McGePoint3d(i.x+n/2,i.y,1)),t.push(new a.McGePoint3d(i.x-n/2,i.y,1)),t.push(new a.McGePoint3d(i.x+n/2,i.y,1)),r.addPline(t,n,n,e,!0,!0)}static ContinueLeader(i,n,e,t,o,s,d){const c=[],l=[],_=dt.TextLengthP4(n,d,void 0,1);if(i.length<1)return c;if(i.length==1){l.push(i[0]),l.push(r.PolarPoint(l[l.length-1],e,1.8)),l.push(r.PolarPoint(l[l.length-1],e,t)),l.push(r.PolarPoint(l[l.length-1],o,s+_));const h=new a.McDbPolyline;for(let P=0;P<l.length;P++)P%2==0&&P<l.length-3?h.addVertexAt(r.Point3dTo2d(l[P]),0,0,.6,P):h.addVertexAt(r.Point3dTo2d(l[P]),0,0,0,P);return c.push(r.AppendEntity(h)),o>Math.PI/2&&o<Math.PI*3/2?c.push(r.addText6P(r.PolarPoint(l[l.length-1],Math.PI/2,1),n,d,0,.7,0)):c.push(r.addText6P(r.PolarPoint(r.PolarPoint(l[l.length-2],Math.PI/2,1),o,s),n,d,0,.7,0)),c}else{for(let P=0;P<i.length;P++)if(P<i.length-1){const u=1.8/i[P].distanceTo(i[P+1]),p=[];p[0]=i[P].x+(i[P+1].x-i[P].x)*u,p[1]=i[P].y+(i[P+1].y-i[P].y)*u,p[2]=i[P].z+(i[P+1].z-i[P].z)*u;const M=new a.McGePoint3d(p[0],p[1],p[2]);l.push(i[P]),l.push(M)}else{const u=1.8/i[P-1].distanceTo(i[P]),p=[];p[0]=i[P].x+(i[P].x-i[P-1].x)*u,p[1]=i[P].y+(i[P].y-i[P-1].y)*u,p[2]=i[P].z+(i[P].z-i[P-1].z)*u;const M=new a.McGePoint3d(p[0],p[1],p[2]);l.push(i[P]),l.push(M);const g=[];g[0]=i[P].x+(i[P].x-i[P-1].x),g[1]=i[P].y+(i[P].y-i[P-1].y),g[2]=i[P].z+(i[P].z-i[P-1].z);const C=new a.McGePoint3d(g[0],g[1],g[2]);l.push(C)}l.push(r.PolarPoint(l[l.length-1],e,t)),l.push(r.PolarPoint(l[l.length-1],o,s+_));const h=new a.McDbPolyline;for(let P=0;P<l.length;P++)P%2==0&&P<l.length-3?h.addVertexAt(r.Point3dTo2d(l[P]),0,0,.6,P):h.addVertexAt(r.Point3dTo2d(l[P]),0,0,0,P);return c.push(r.AppendEntity(h)),o>Math.PI/2&&o<Math.PI*3/2?c.push(r.addText6P(r.PolarPoint(l[l.length-1],Math.PI/2,1),n,d,0,.7,0)):c.push(r.addText6P(r.PolarPoint(r.PolarPoint(l[l.length-2],Math.PI/2,1),o,s),n,d,0,.7,0)),c}}static LeaderAndText(i,n,e,t,o,s){a.MxCpp.getCurrentMxCAD().getDatabase().getCurrentlyTextStyleId();const c=[];try{const l=dt.TextLengthP3(o,s)+1,_=[],h=i,P=r.PolarPoint(h,n,e),u=r.PolarPoint(P,t,l),p=r.PolarPoint(r.MidPoint(P,u),Math.PI/2,1);return _.push(h),_.push(P),_.push(u),c.push(...r.addLeader2(_,!1)),c.push(r.addText(p,o,s,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextBottom)),c}catch(l){return c}finally{}}static DimPlineLength(i,n,e,t,o,s){const d=[];try{let c;n>0?c=new a.McGePoint3d(0,1e4,0):c=a.McGePoint3d.kOrigin;const _=i.offsetCurves(Math.abs(n),c).aryVal[0];_.colorIndex=5;let h=!0;_.numVerts()!=i.numVerts()&&(h=!1);for(let P=0;P<i.numVerts()-1;P++){if(o.includes(P+1))continue;const u=i.getBulgeAt(P),p=i.getPointAt(P).val,M=i.getPointAt(P+1).val,g=p.distanceTo(M);if(g<.01)continue;let C=new a.McGeVector3d(M.x-p.x,M.y-p.y),y;const F=r.MidPoint(p,M);if(u==0){y=C.rotateBy(Math.PI/2*Math.abs(n)/n,a.McGeVector3d.kZAxis);debugger;let I=(g*e).toFixed(0);Object.keys(t).includes(P+1+"")&&(I=t.get(P+1));let T;h?T=r.MidPoint(_.getPointAt(P).val,_.getPointAt(P+1).val):T=r.PolarPointByVector(F,y,n),d.push(r.AddDimAligned(p,M,T,I))}else{debugger;y=C.rotateBy(Math.PI/2*Math.abs(u)/u,a.McGeVector3d.kZAxis);const I=Math.atan(u)*4,T=g/2/Math.tan(I/2),R=g/2/Math.sin(I/2),L=r.PolarPointByVector(F,y,T);debugger;let f=1;s&&h&&_.getPointAtDist((_.getDistAtPoint(_.getPointAt(P).val).val+_.getDistAtPoint(_.getPointAt(P+1).val).val)/2).val.distanceTo(L)-(n+R)>1e-5&&(f=-1);let G=(I*R*e).toFixed(0);Object.keys(t).includes(P+1+"")&&(G=t.get(P+1)),d.push(r.add3PLineAngular(L,p,M,f*n+R,a.McGePoint3d.kOrigin,G,!1))}}return d}catch(c){return console.error("DimPlineLength错误"),d}finally{}}}class E{static DrawJxgj(i,n,e){const t=[];try{let o,s;const d=i.getMcDbCurve(),c=n.getMcDbCurve(),l=d,_=c;o=l.getClosestPointTo(e,!1).val;const h=l.getFirstDeriv(o).val;let P=h.angleTo1(a.McGeVector3d.kXAxis);h.y<0&&(P=Math.PI*2-P),P+=Math.PI/2;const u=r.AddXLineBy2Point(o,r.PolarPoint(o,P,1)),p=m.MyIntersectWinth(u,n);if(p.length==2)s=o.distanceTo(p[0])<o.distanceTo(p[1])?p[0]:p[1];else if(p.length==1)s=p[0];else return console.error("画径向弯钩错误:直线与曲线交点大于两个,请核查","DrawJxgj",i,n,e),v.Erase(u),t;const M=r.GetDipAngle(o,s),g=.25;return t.push(E.Jxgj(o,s,g,3)),t.push(rt.CirclePolyline(r.PolarPoint(o,M,g),g,3)),t.push(rt.CirclePolyline(r.PolarPoint(s,M+Math.PI,g),g,3)),v.Erase(u),t}catch(o){return t}finally{}}static MarkN5Steel(i,n,e,t,o,s){const d=[];try{if(t.length!=e.length)return d;let c=0;for(let l=0;l<t.length;l++)if(t[l].distanceTo(i)<n){c=l;break}if(s){const l=[],_=r.PolarPoint(e[c],Math.PI/3,6),h=r.PolarPoint(_,0,20);l.push(e[c]),l.push(_),l.push(h);const P=new a.McGePoint3d(e[c-1].x+(_.y-e[c-1].y)*Math.tan(Math.PI/6),_.y,0),u=new a.McGePoint3d(e[c-2].x+(_.y-e[c-2].y)*Math.tan(Math.PI/6),_.y,0);d.push(...r.addLeader2(l,!1)),d.push(r.AddLeader2P(e[c-1],P)),d.push(r.AddLeader2P(e[c-2],u)),d.push(r.addText6P(r.PolarPoint(P,Math.PI/4,1),o,3.5,0,.7,0));const p=[],M=r.PolarPoint(t[c-3],Math.PI*4/3,6),g=r.PolarPoint(M,0,-20);p.push(t[c-3]),p.push(M),p.push(g);const C=new a.McGePoint3d(t[c-2].x+(M.y-t[c-2].y)*Math.tan(Math.PI/6),M.y,0),y=new a.McGePoint3d(t[c-1].x+(M.y-t[c-1].y)*Math.tan(Math.PI/6),M.y,0);d.push(...r.addLeader2(p,!1)),d.push(r.AddLeader2P(t[c-2],C)),d.push(r.AddLeader2P(t[c-1],y)),d.push(r.addText6P(r.PolarPoint(g,Math.PI/2,1),o,3.5,0,.7,0))}else{const l=[],_=r.PolarPoint(e[c],Math.PI*4/3,12),h=r.PolarPoint(_,0,-22);l.push(e[c]),l.push(_),l.push(h);const P=new a.McGePoint3d(e[c-1].x+(_.y-e[c-1].y)*Math.tan(Math.PI/6),_.y,0),u=new a.McGePoint3d(e[c-2].x+(_.y-e[c-2].y)*Math.tan(Math.PI/6),_.y,0);d.push(...r.addLeader2(l,!1)),d.push(r.AddLeader2P(e[c-1],P)),d.push(r.AddLeader2P(e[c-2],u)),d.push(r.addText6P(r.PolarPoint(h,Math.PI/4,1),o,3.5,0,.7,0));const p=[],M=r.PolarPoint(t[c+2],Math.PI*2/3,10),g=r.PolarPoint(M,0,-22);p.push(t[c+2]),p.push(M),p.push(g);const C=new a.McGePoint3d(t[c+1].x-(M.y-t[c+1].y)*Math.tan(Math.PI/6),M.y,0),y=new a.McGePoint3d(t[c+0].x-(M.y-t[c+0].y)*Math.tan(Math.PI/6),M.y,0);d.push(...r.addLeader2(p,!1)),d.push(r.AddLeader2P(t[c+1],C)),d.push(r.AddLeader2P(t[c+0],y)),d.push(r.addText6P(r.PolarPoint(g,Math.PI/4,1),o,3.5,0,.7,0))}return d}catch(c){return d}finally{}}static SteelHooked(i,n,e){const t=[];try{const o=[],s=i,d=new a.McGePoint3d(s.x-1.2,s.y,1),c=new a.McGePoint3d(d.x,d.y-1.5,0),l=new a.McGePoint3d(c.x+30,c.y,1),_=new a.McGePoint3d(l.x,l.y+1.5,0),h=new a.McGePoint3d(_.x-1.2,_.y,0);o.push(s),o.push(d),o.push(c),o.push(l),o.push(_),o.push(h),t.push(r.addPline5P(o,0,3,!0,!1));const P=r.PolarPoint(r.MidPoint(s,h),Math.PI/2,3);return t.push(r.addText(P,e,3.5,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),t.push(r.AddDimRotated6PNoDimLine(0,new a.McGePoint3d(c.x-.75,c.y+.75,0),new a.McGePoint3d(l.x+.75,c.y+.75,0),r.PolarPoint(c,Math.PI*3/2,5),n)),t}catch(o){return t}finally{}}static SteelLine(i,n){const e=[],t=i,o=r.PolarPoint(t,0,35),s=r.PolarPoint(r.MidPoint(t,o),Math.PI/2,3);return e.push(r.addLine3P(t,o,3)),e.push(r.addText(s,n,3.5,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),e}static Steel半圆弯钩大样(i,n,e,t){const o=[];let d=a.MxCpp.getCurrentMxCAD().getSysVarDouble("LTSCALE"),c="5d";t&&(c="10d");try{const l=[],_=i,h=r.PolarPoint(_,Math.PI/2,2),P=new a.McGePoint3d(h.x-45,h.y,-1),u=new a.McGePoint3d(P.x,P.y+8,0),p=new a.McGePoint3d(u.x+3*8/4,u.y,0),M=new a.McGePoint3d(p.x,p.y+2,0),g=new a.McGePoint3d(M.x-3*8/4,M.y,1),C=new a.McGePoint3d(g.x,g.y-12,0),y=new a.McGePoint3d(C.x+45,C.y,0);l.push(_),l.push(h),l.push(P),l.push(u),l.push(p),l.push(M),l.push(g),l.push(C),l.push(y),o.push(r.addPline5P(l,0,3,!0,!1));const F=C,I=r.PolarPoint(F,Math.PI,18),T=r.PolarPoint(I,Math.PI/2,2),R=r.PolarPoint(T,0,18);o.push(r.addLine(F,I,3,"DASHEDX2",.2/d)),o.push(r.addLine(I,T,3,"DASHEDX2",.2/d)),o.push(r.addLine(T,R,3,"DASHEDX2",.2/d));const L=r.PolarPoint(r.MidPoint(p,M),0,8),f=r.PolarPoint(r.MidPoint(_,h),0,8);return o.push(r.AddDimRotated6PNoDimLine(0,I,new a.McGePoint3d(R.x-6,R.y+4,0),r.PolarPoint(I,Math.PI*3/2,10),"l'")),o.push(r.AddDimRotated6PNoDimLine(0,M,new a.McGePoint3d(g.x,g.y,0),r.PolarPoint(M,Math.PI/2,5),c)),o.push(r.AddDimRotated6P(Math.PI/2,p,M,r.PolarPoint(M,0,5),L,"d")),o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,p,P,r.PolarPoint(p,0,5),"R")),o.push(r.AddDimRotated6P(Math.PI/2,_,h,r.PolarPoint(_,0,5),f,"d")),o.push(r.AddMtext(new a.McGePoint3d(_.x-60,_.y-16,0),n,3.5,200)),o}catch(l){return o}}static Steel直弯钩大样(i,n){const e=[];let o=a.MxCpp.getCurrentMxCAD().getSysVarDouble("LTSCALE");try{const s=[],d=i,c=r.PolarPoint(d,Math.PI/2,2),l=new a.McGePoint3d(c.x-45,c.y,-Math.tan(Math.PI/8)),_=new a.McGePoint3d(l.x-4,l.y+4,0),h=new a.McGePoint3d(_.x,_.y+3*8/4,0),P=new a.McGePoint3d(h.x-2,h.y,0),u=new a.McGePoint3d(P.x,P.y-3*8/4,Math.tan(Math.PI/8)),p=new a.McGePoint3d(u.x+6,u.y-6,0),M=new a.McGePoint3d(p.x+45,p.y,0);s.push(d),s.push(c),s.push(l),s.push(_),s.push(h),s.push(P),s.push(u),s.push(p),s.push(M),e.push(r.addPline5P(s,0,3,!0,!1));const g=p,C=r.PolarPoint(g,Math.PI,15),y=r.PolarPoint(C,Math.PI/2,2),F=r.PolarPoint(y,0,15);r.addLine(g,C,3,"DASHEDX2",.2/o),r.addLine(C,y,3,"DASHEDX2",.2/o),r.addLine(y,F,3,"DASHEDX2",.2/o);const I=r.PolarPoint(r.MidPoint(d,c),0,8),T=r.PolarPoint(r.MidPoint(h,P),Math.PI/2,8);let R="",L="3.5d",f="";n?(R="11.783d",f="10d"):(R="13.783d",f="12d"),e.push(r.AddDimRotated6PNoDimLine(0,C,new a.McGePoint3d(F.x-6,F.y+4,0),r.PolarPoint(C,Math.PI*3/2,7),R)),e.push(r.AddDimRotated6PNoDimLine(Math.PI/2,P,new a.McGePoint3d(u.x,u.y,0),r.PolarPoint(P,Math.PI,5),f)),e.push(r.AddDimRotated6PNoDimLine(0,h,P,r.PolarPoint(P,Math.PI/2,5),"d")),e.push(r.AddDimRotated6P(Math.PI/2,d,c,r.PolarPoint(d,0,5),I,"d"));const G=new a.McGePoint3d(l.x,l.y+4,0);return e.push(r.addText5(G,L,3.5,0,.7)),e.push(r.addLine3P(l,G,7)),e.push(r.addLine3P(_,G,7)),e}catch(s){return e}finally{}}static Jxgj(i,n,e,t){const o=[],s=r.GetDipAngle(i,n);let d;s>=Math.PI/2&&s<=Math.PI*3/2?d=Math.PI/2:d=-Math.PI/2;let c=r.PolarPoint(r.PolarPoint(i,s,e),s+d,e),l=r.PolarPoint(c,s,.4);c=new a.McGePoint3d(c.x,c.y,1*d/Math.abs(d));let _=r.PolarPoint(r.PolarPoint(i,s,e),s-d,e),h=r.PolarPoint(r.PolarPoint(n,s+Math.PI,e),s-d,e);h=new a.McGePoint3d(h.x,h.y,1*d/Math.abs(d));let P=r.PolarPoint(r.PolarPoint(n,s+Math.PI,e),s+d,e),u=r.PolarPoint(P,s+Math.PI,.4);return o.push(l),o.push(c),o.push(_),o.push(h),o.push(P),o.push(u),r.addPline5P(o,0,t,!0,!1)}static DrawJxgj双层配筋(i,n,e){return Pe(this,null,function*(){const t=[];try{let o=new a.McGePoint3d,s=new a.McGePoint3d;const d=i.getMcDbCurve(),c=n.getMcDbCurve(),l=d,_=c;o=l.getClosestPointTo(e,!1).val;const h=l.getFirstDeriv(o).val;let P=h.angleTo1(a.McGeVector3d.kXAxis);h.y<0&&(P=Math.PI*2-P),P+=Math.PI/2;const u=r.addLine2P(o,r.PolarPoint(o,P,1e4)),p=_.offsetCurves(.25,new a.McGePoint3d),M=r.AppendEntity(p.aryVal[0]),g=yield m.MyIntersectWinth(u,M);g.length==2?s=o.distanceTo(g[0])<o.distanceTo(g[1])?g[0]:g[1]:g.length==1?s=g[0]:console.error("画径向弯钩错误:直线与曲线交点大于两个,请核查","DrawJxgj双层配筋",i,n,e);let C;P>=Math.PI/2&&P<=Math.PI*3/2?C=Math.PI/2:C=-Math.PI/2;const y=.25;let F,I,T,R,L,f;const G=[],O=[],b=[];I=r.PolarPoint(r.PolarPoint(o,P,y),P+C,y),F=r.PolarPoint(I,P,.4),I=new a.McGePoint3d(I.x,I.y,1),T=r.PolarPoint(r.PolarPoint(o,P,y),P-C,y),R=r.PolarPoint(s,P-C,y),R=new a.McGePoint3d(R.x,R.y,1),L=r.PolarPoint(s,P+C,y),f=r.PolarPoint(L,P+Math.PI,.4),G.push(F),G.push(I),G.push(T),G.push(R),G.push(L),G.push(f);const H=r.PolarPoint(o,P,y),x=s,j=new a.McGePoint3d(H.x+y/2,H.y,1),N=new a.McGePoint3d(H.x-y/2,H.y,1),k=new a.McGePoint3d(x.x+y/2,x.y,1),Y=new a.McGePoint3d(x.x-y/2,x.y,1);O.push(j),O.push(N),O.push(j),b.push(k),b.push(Y),b.push(k);const U=r.addPline5P(G,0,3,!0,!1),Q=r.addPline5P(O,y,3,!0,!1),K=r.addPline5P(b,y,3,!0,!1);return t.push(U),t.push(Q),t.push(K),v.Erase(u),v.Erase(M),t}catch(o){return t}finally{}})}static DrawSpgj(i,n,e){const t=[];try{const o=i.getMcDbCurve(),s=n.getMcDbCurve(),d=o.getClosestPointTo(e,!1).val,c=o.getFirstDeriv(d).val;let l=c.angleTo1(a.McGeVector3d.kXAxis);c.y<0?l=Math.PI*2-l:l+=Math.PI/2;let _,h;l>=Math.PI/2&&l<=Math.PI*3/2?(_=Math.PI/2,h=Math.PI):(_=-Math.PI/2,h=0);const P=s.offsetCurves(.25,new a.McGePoint3d(0,1e5,0)),u=r.AppendEntity(P.aryVal[0]),p=A.IntsOfLineToCurve(d,r.PolarPoint(d,h,1e3),u,"Near"),M=.25;let g,C,y,F,I,T;const R=[],L=[],f=[];C=r.PolarPoint(r.PolarPoint(d,h,M),h+_,M),g=r.PolarPoint(C,h,.4),C=new a.McGePoint3d(C.x,C.y,1),y=r.PolarPoint(r.PolarPoint(d,h,M),h-_,M),F=r.PolarPoint(p,h-_,M),F=new a.McGePoint3d(F.x,F.y,1),I=r.PolarPoint(p,h+_,M),T=r.PolarPoint(I,h+Math.PI,.4),R.push(g),R.push(C),R.push(y),R.push(F),R.push(I),R.push(T);const G=r.PolarPoint(d,h,M),O=p;return t.push(m.CenterPoint3P(G,.125,3)),t.push(m.CenterPoint3P(O,.125,3)),t.push(r.addPline5P(R,0,3,!0,!1)),v.Erase(u),t}catch(o){return t}}static JcPjpm(i,n,e,t,o,s,d,c,l,_,h,P,u,p,M,g){const C=[];try{const F=dt.TextLengthP3(_,g),I=dt.TextLengthP3(h,g),T=dt.TextLengthP3(P,g),R=dt.TextLengthP3(u,g),L=Math.max(F,I),f=Math.max(T,R),G=Math.ceil(Math.max(L,f))+2,O=Math.ceil(dt.TextLengthP3(l,g)),b=i,H=r.PolarPoint(b,0,45),x=r.PolarPoint(b,Math.PI*3/2,n),j=r.PolarPoint(x,0,45),N=r.PolarPoint(b,Math.PI/2,e),k=r.PolarPoint(N,0,45),Y=r.PolarPoint(b,Math.PI*3/2,e+n),U=r.PolarPoint(Y,0,45);C.push(r.addLine3P(b,H,3)),C.push(r.addLine3P(x,j,3)),C.push(r.addLine3P(N,k,7)),C.push(r.addLine3P(Y,U,7));const Q=[];for(let lt=0;lt<10;lt++){const yt=[],Ft=new a.McGePoint3d(b.x+lt*4+4.5,b.y-.2,0),xt=new a.McGePoint3d(Ft.x,Ft.y+.45,-1),It=new a.McGePoint3d(xt.x+.5,xt.y,0),gt=new a.McGePoint3d(It.x,It.y-n-.5,-1),Ot=new a.McGePoint3d(gt.x-.5,gt.y,0),ft=new a.McGePoint3d(Ot.x,Ot.y+.45,0);yt.push(Ft),yt.push(xt),yt.push(It),yt.push(gt),yt.push(Ot),yt.push(ft),r.addPline5P(yt,0,3,!0,!1),Q.push(new a.McGePoint3d((It.x+gt.x)/2,(It.y+gt.y)/2,0)),Q.push(r.PolarPoint(new a.McGePoint3d((It.x+gt.x)/2,(It.y+gt.y)/2,0),0,1.8)),rt.CirclePolyline(new a.McGePoint3d(Ft.x+.25,Ft.y+.45,0),.25,3),rt.CirclePolyline(new a.McGePoint3d(ft.x+.25,ft.y-.45,0),.25,3);const bt=new a.McGePoint3d(Ft.x+.25,Ft.y+.45,0),Ct=new a.McGePoint3d(ft.x+.25,ft.y-.45,0);lt%2==0?(r.AddLeader2P(bt,r.PolarPoint(bt,Math.PI/3,10)),r.AddLeader2P(Ct,r.PolarPoint(Ct,Math.PI*5/3,10))):(r.AddLeader2P(bt,r.PolarPoint(bt,Math.PI/3,5)),r.AddLeader2P(Ct,r.PolarPoint(Ct,Math.PI*5/3,5)))}Q.push(r.PolarPoint(Q[Q.length-1],0,O+6));const K=new a.McDbPolyline;for(let lt=0;lt<Q.length;lt++)lt%2==0?K.addVertexAt(r.Point3dTo2d(Q[lt]),0,0,.6,lt):K.addVertexAt(r.Point3dTo2d(Q[lt]),0,0,0,lt);r.AppendEntity(K),r.addText5(r.PolarPoint(r.PolarPoint(K.getPointAt(0).val,0,43),Math.PI/2,1),l,g,0,.7),r.AddBrokenLine(b,x,.25,3,7),r.AddBrokenLine(H,j,.25,3,7);const B=[];B.push(r.PolarPoint(x,0,2)),B.push(r.PolarPoint(r.PolarPoint(x,0,2),Math.PI/2,1.8)),B.push(r.PolarPoint(b,0,2)),B.push(r.PolarPoint(r.PolarPoint(b,0,2),Math.PI/2,1.8)),B.push(r.PolarPoint(r.PolarPoint(b,0,2),Math.PI/2,12)),B.push(r.PolarPoint(r.PolarPoint(r.PolarPoint(b,0,2),Math.PI/2,12),0,12.5));const Z=new a.McDbPolyline;Z.addVertexAt(r.Point3dTo2d(B[0]),0,0,.6,0),Z.addVertexAt(r.Point3dTo2d(B[1]),0,0,0,1),Z.addVertexAt(r.Point3dTo2d(B[2]),0,0,.6,2),Z.addVertexAt(r.Point3dTo2d(B[3]),0,0,0,3),Z.addVertexAt(r.Point3dTo2d(B[4]),0,0,0,4),Z.addVertexAt(r.Point3dTo2d(B[5]),0,0,0,5),r.AppendEntity(Z),r.addText5(r.PolarPoint(B[4],Math.PI/4,1),c,g,0,.7);const V=new a.McGePoint3d(b.x+4.75,b.y+.25,0),q=r.PolarPoint(V,Math.PI/3,10),z=r.PolarPoint(q,0,40+G);r.addLine2P(q,z),r.addText5(r.PolarPoint(r.PolarPoint(q,0,40),Math.PI/2,1),_,g,0,.7);const $=new a.McGePoint3d(b.x+8.75,b.y+.25,0),nt=r.PolarPoint($,Math.PI/3,5),ct=r.PolarPoint(nt,0,38.5+G);r.addLine2P(nt,ct),r.addText5(r.PolarPoint(r.PolarPoint(nt,0,38.5),Math.PI/2,1),h,g,0,.7);const st=new a.McGePoint3d(x.x+4.75,x.y-.25,0),et=r.PolarPoint(st,Math.PI*5/3,10),pt=r.PolarPoint(et,0,40+G);r.addLine2P(et,pt),r.addText5(r.PolarPoint(r.PolarPoint(et,0,40),Math.PI/2,1),P,g,0,.7);const ht=new a.McGePoint3d(x.x+8.75,x.y-.25,0),Mt=r.PolarPoint(ht,Math.PI*5/3,5),wt=r.PolarPoint(Mt,0,38.5+G);r.addLine2P(Mt,wt),r.addText5(r.PolarPoint(r.PolarPoint(Mt,0,38.5),Math.PI/2,1),u,g,0,.7);const Dt=new a.McGePoint3d(b.x+4.5,b.y+.25,0),Gt=new a.McGePoint3d(x.x+4.5,x.y-.25,0);return r.AddDimRotated6P(Math.PI/2,Dt,Gt,r.PolarPoint(N,Math.PI,5),new a.McGePoint3d(Dt.x-12,Dt.y-2.35,0),d),r.AddDimRotated6PNoDimLine(Math.PI/2,N,Y,r.PolarPoint(N,Math.PI,10),s),r.AddDimRotated6P(Math.PI/2,N,Dt,r.PolarPoint(N,Math.PI,5),new a.McGePoint3d(Dt.x-7,Dt.y+4,0),t),r.AddDimRotated6P(Math.PI/2,Y,Gt,r.PolarPoint(Y,Math.PI,5),new a.McGePoint3d(Gt.x-7,Gt.y-4,0),o),t!=o&&r.addText5(new a.McGePoint3d(Y.x+25,Y.y+18,0),"靠初支侧",g,0,.7),m.Heading1(new a.McGePoint3d(i.x+35,i.y-25,0),p,M),C}catch(F){return console.error(`
|
|
5
|
+
绘制钢筋剖面图出错`),C}}static DjPjpm(i,n,e,t,o,s,d,c,l,_,h,P,u,p){const M=[];try{const C=dt.TextLengthP3(_,p),y=dt.TextLengthP3(h,p),F=Math.ceil(Math.max(C,y))+2,I=Math.ceil(dt.TextLengthP3(l,p)),T=i,R=r.PolarPoint(T,0,45),L=r.PolarPoint(T,Math.PI*3/2,n),f=r.PolarPoint(L,0,45),G=r.PolarPoint(T,Math.PI/2,e),O=r.PolarPoint(G,0,45),b=r.PolarPoint(T,Math.PI*3/2,e+n),H=r.PolarPoint(b,0,45);M.push(r.addLine3P(T,R,3)),M.push(r.addLine3P(L,f,3)),M.push(r.addLine3P(G,O,7)),M.push(r.addLine3P(b,H,7));const x=[];for(let z=0;z<10;z++){const $=[],nt=new a.McGePoint3d(T.x+z*4+4.5,T.y-.2,0),ct=new a.McGePoint3d(nt.x,nt.y+.45,-1),st=new a.McGePoint3d(ct.x+.5,ct.y,0),et=new a.McGePoint3d(st.x,st.y-n-.5,-1),pt=new a.McGePoint3d(et.x-.5,et.y,0),ht=new a.McGePoint3d(pt.x,pt.y+.45,0);$.push(nt),$.push(ct),$.push(st),$.push(et),$.push(pt),$.push(ht),r.addPline5P($,0,3,!0,!1),x.push(new a.McGePoint3d((st.x+et.x)/2,(st.y+et.y)/2,0)),x.push(r.PolarPoint(new a.McGePoint3d((st.x+et.x)/2,(st.y+et.y)/2,0),0,1.8)),rt.CirclePolyline(new a.McGePoint3d(nt.x+.25,nt.y+.45,0),.25,3),rt.CirclePolyline(new a.McGePoint3d(ht.x+.25,ht.y-.45,0),.25,3);const Mt=new a.McGePoint3d(nt.x+.25,nt.y+.45,0),wt=new a.McGePoint3d(ht.x+.25,ht.y-.45,0);r.addLine2P(Mt,r.PolarPoint(Mt,Math.PI/3,8)),r.addLine2P(wt,r.PolarPoint(wt,Math.PI*5/3,8))}x.push(r.PolarPoint(x[x.length-1],0,I+6));const j=new a.McDbPolyline;for(let z=0;z<x.length;z++)z%2==0?j.addVertexAt(r.Point3dTo2d(x[z]),0,0,.6,z):j.addVertexAt(r.Point3dTo2d(x[z]),0,0,0,z);r.AppendEntity(j),r.addText5(r.PolarPoint(r.PolarPoint(j.getPointAt(0).val,0,43),Math.PI/2,1),l,p,0,.7),r.AddBrokenLine(T,L,.25,3,7),r.AddBrokenLine(R,f,.25,3,7);const N=[];N.push(r.PolarPoint(L,0,2)),N.push(r.PolarPoint(r.PolarPoint(L,0,2),Math.PI/2,1.8)),N.push(r.PolarPoint(T,0,2)),N.push(r.PolarPoint(r.PolarPoint(T,0,2),Math.PI/2,1.8)),N.push(r.PolarPoint(r.PolarPoint(T,0,2),Math.PI/2,12)),N.push(r.PolarPoint(r.PolarPoint(r.PolarPoint(T,0,2),Math.PI/2,12),0,15));const k=new a.McDbPolyline;k.addVertexAt(r.Point3dTo2d(N[0]),0,0,.6,0),k.addVertexAt(r.Point3dTo2d(N[1]),0,0,0,1),k.addVertexAt(r.Point3dTo2d(N[2]),0,0,.6,2),k.addVertexAt(r.Point3dTo2d(N[3]),0,0,0,3),k.addVertexAt(r.Point3dTo2d(N[4]),0,0,0,4),k.addVertexAt(r.Point3dTo2d(N[5]),0,0,0,5),r.AppendEntity(k),r.addText5(r.PolarPoint(N[4],Math.PI/4,1),c,p,0,.7);const Y=new a.McGePoint3d(T.x+4.75,T.y+.25,0),U=r.PolarPoint(Y,Math.PI/3,8),Q=r.PolarPoint(U,0,40+F);r.addLine2P(U,Q),r.addText5(r.PolarPoint(r.PolarPoint(U,0,40),Math.PI/2,1),_,p,0,.7);const K=new a.McGePoint3d(L.x+4.75,L.y-.25,0),B=r.PolarPoint(K,Math.PI*5/3,8),Z=r.PolarPoint(B,0,40+F);r.addLine2P(B,Z),r.addText5(r.PolarPoint(r.PolarPoint(B,0,40),Math.PI/2,1),h,p,0,.7);const V=new a.McGePoint3d(T.x+4.5,T.y+.25,0),q=new a.McGePoint3d(L.x+4.5,L.y-.25,0);return r.AddDimRotated6P(Math.PI/2,V,q,r.PolarPoint(G,Math.PI,5),new a.McGePoint3d(V.x-12,V.y-2.35,0),d),r.AddDimRotated6PNoDimLine(Math.PI/2,G,b,r.PolarPoint(G,Math.PI,10),s),r.AddDimRotated6P(Math.PI/2,G,V,r.PolarPoint(G,Math.PI,5),new a.McGePoint3d(V.x-7,V.y+4,0),t),r.AddDimRotated6P(Math.PI/2,b,q,r.PolarPoint(b,Math.PI,5),new a.McGePoint3d(q.x-7,q.y-4,0),o),t!=o&&r.addText5(new a.McGePoint3d(b.x+25,b.y+15,0),"靠初支侧",p,0,.7),m.Heading1(new a.McGePoint3d(i.x+25,i.y-25,0),P,u),M}catch(C){return console.error(`
|
|
6
|
+
绘制钢筋剖面图出错`),M}finally{}}static Dia半圆弯钩直径计算(i,n,e){const t=Math.sqrt(Math.pow(i+e,2)+Math.pow(n+e,2))/e-1;let o=Math.ceil(t*2)/2;return o<4&&(o=4),o}static Len半圆钢筋展开段长度(i,n){return n?w.ToDouble((Math.PI*(i+1)/2+10-i/2-1).toString()):w.ToDouble((Math.PI*(i+1)/2+5-i/2-1).toString())}static Len勾筋长度(i,n,e,t,o,s){const d=E.Dia半圆弯钩直径计算(t,o,s);return(i-(n+e)/100)*100+2*d*s}}class Be{InitSteelCommonData(i){}CalcSteelHotData(i){this.InitKeyPoint(i)}InitKeyPoint(i){const n=i.Property;i.LinData,i.SteelData;const e=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelFirst),0,1,!0,!0),t=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelSecond),0,1,!0,!0),o=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelCenter),0,1,!0,!0),s=e.getMcDbEntity(),d=t.getMcDbEntity(),c=o.getMcDbEntity();n.KeyPoint.pt右施工缝与配筋中线交点=A.IntsOfLineToCurve(n.KeyPoint.pt施工缝右1,n.KeyPoint.pt施工缝右2,o,"MaxX"),n.KeyPoint.pt左施工缝与配筋中线交点=A.IntsOfLineToCurve(n.KeyPoint.pt施工缝左1,n.KeyPoint.pt施工缝左2,o,"MinX");const l=A.IntsOfLineToCurve(n.KeyPoint.pt施工缝左1,n.KeyPoint.pt施工缝左2,e,"MinX"),_=A.IntsOfLineToCurve(n.KeyPoint.pt施工缝右1,n.KeyPoint.pt施工缝右2,e,"MaxX"),h=A.IntsOfLineToCurve(n.KeyPoint.pt施工缝左1,n.KeyPoint.pt施工缝左2,t,"MinX"),P=A.IntsOfLineToCurve(n.KeyPoint.pt施工缝右1,n.KeyPoint.pt施工缝右2,t,"MaxX"),u=Math.abs(c.getDistAtPoint(c.getClosestPointTo(n.KeyPoint.pt左施工缝与配筋中线交点,!1).val).val-c.getDistAtPoint(c.getClosestPointTo(n.KeyPoint.pt右施工缝与配筋中线交点,!1).val).val),p=Math.abs(d.getDistAtPoint(d.getClosestPointTo(h,!1).val).val-d.getDistAtPoint(d.getClosestPointTo(P,!1).val).val),M=Math.abs(s.getDistAtPoint(s.getClosestPointTo(l,!1).val).val-s.getDistAtPoint(s.getClosestPointTo(_,!1).val).val);n.AreaLength.Len_Pj_In_全环=s.getLength().val,n.AreaLength.Len_Pj_Out_全环=d.getLength().val,n.AreaLength.Len_Pj_Center_全环=c.getLength().val,n.AreaLength.Len_Pj_Cen_Sgfys=u,n.AreaLength.Len_Pj_In_Sgfys=M,n.AreaLength.Len_Pj_Out_Sgfys=p,v.Erase(s),v.Erase(d),v.Erase(c)}InitColorAndCoords(i,n){const e=i.Property;e.Color.Color_Jg=3,e.Color.Color_Bj=7,e.Color.Color_Sg=252,e.FrameCoords.Pj.ptBase1=n,e.FrameCoords.Pj.ptBase2=new a.McGePoint3d(n.x+450,n.y,0),e.FrameCoords.Pj.ptBase3=new a.McGePoint3d(n.x+900,n.y,0),e.FrameCoords.Pj.ptDmOriginTarget=new a.McGePoint3d(n.x+125,n.y-110,0),e.FrameCoords.Pj.ptDetail_MainBarOriginTarget=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+320,e.FrameCoords.Pj.ptBase1.y-110,0),e.FrameCoords.Pj.ptTable_QuantiyTopMid=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+180,e.FrameCoords.Pj.ptBase2.y-140,0),e.FrameCoords.Pj.ptDm_TitleTopMid=new a.McGePoint3d(e.FrameCoords.Pj.ptDmOriginTarget.x,e.FrameCoords.Pj.ptDmOriginTarget.y-40,0),e.FrameCoords.Pj.ptDetail_MainBarTitleTopMid=new a.McGePoint3d(e.FrameCoords.Pj.ptDetail_MainBarOriginTarget.x,e.FrameCoords.Pj.ptDetail_MainBarOriginTarget.y-40,0)}}class fn{}class Yo extends Be{InitSteelCommonData(i){const n=i.Data,e=i.Setting,t=i.LinData,o=i.SteelData;if(o.DjcdValue=e.PeiJin.DjcdValue,o.DiameterN12=n.Pj.Pjcs.DiameterN12,o.DiameterN34=n.Pj.Pjcs.DiameterN34,o.SpacingN1234=n.Pj.Pjcs.SpacingN1234,o.DiameterN5=n.Pj.Pjcs.DiameterN5,o.DiameterN678=n.Pj.Pjcs.DiameterN678,o.SpacingN678=n.Pj.Pjcs.SpacingN678,o.TProtectiveCover_W=n.Pj.Pjcs.TProtectiveCover_W,o.TProtectiveCover_N=n.Pj.Pjcs.TProtectiveCover_N,o.offSetSteel_W=(o.TProtectiveCover_W+o.DiameterN12/2+o.DiameterN678)/100,o.offSetSteel_N=(o.TProtectiveCover_N+o.DiameterN12/2+o.DiameterN678)/100,o.RadiusFirstSteel1=t.RadiusFirst1+o.offSetSteel_N,o.RadiusFirstSteel2=t.RadiusFirst2+o.offSetSteel_N,o.RadiusFirstSteel3=t.RadiusFirst3+o.offSetSteel_N,o.RadiusFirstSteel4=t.RadiusFirst4+o.offSetSteel_N,o.RadiusFirstSteel5=t.RadiusFirst5+o.offSetSteel_N,o.RadiusSecondSteel1=t.RadiusSecond1-o.offSetSteel_W,o.RadiusSecondSteel2=t.RadiusSecond2-o.offSetSteel_W,o.RadiusSecondSteel3=t.RadiusSecond3-o.offSetSteel_W,o.RadiusSecondSteel5=t.RadiusSecond5-o.offSetSteel_W,e.ChenQi.Cqdm.Wlkxq){const d=r.PolarPoint(t.O_Invert,-t.Radian_Widest_inDown,o.RadiusSecondSteel5);o.ptSteelSecond3_无凸度=r.PolarPoint(t.O4_1_y,-t.Radian_Widest_inDown,t.RadiusFirst4+t.d1-o.offSetSteel_W),o.ptSteelSecond2_无凸度=A.IntsOfLineToCircle(t.O_Invert,o.RadiusSecondSteel5,d,o.ptSteelSecond3_无凸度)[0],o.Steel_O4_2_y=A.IntsOfLineToLine(o.ptSteelSecond3_无凸度,t.O4_1_y,o.ptSteelSecond2_无凸度,t.O_Invert),o.Steel_O4_2_z=new a.McGePoint3d(-o.Steel_O4_2_y.x,o.Steel_O4_2_y.y,0),o.RadiusSecondSteel4=o.ptSteelSecond2_无凸度.distanceTo(o.Steel_O4_2_y),o.Steel_Radian_R4=A.getArcRadianByTwoPoint(o.ptSteelSecond2_无凸度,o.ptSteelSecond3_无凸度,o.RadiusSecondSteel4)}else{o.ptSteelSecond2_无凸度=r.PolarPoint(t.O4_1_y,-t.Radian_Widest_inDown-t.Radian_NearSgArc内,t.RadiusFirst4+t.d2-o.offSetSteel_W),o.ptSteelSecond3_无凸度=r.PolarPoint(t.O4_1_y,-t.Radian_Widest_inDown,t.RadiusFirst4+t.d1-o.offSetSteel_W);const d=new a.McGeVector3d(o.ptSteelSecond3_无凸度.x-o.ptSteelSecond2_无凸度.x,o.ptSteelSecond3_无凸度.y-o.ptSteelSecond2_无凸度.y),c=Math.tan(d.angleTo1(a.McGeVector3d.kXAxis)-Math.PI/2),l=Math.tan(-t.Radian_Widest_inDown),_=new a.McGePoint3d((o.ptSteelSecond2_无凸度.x+o.ptSteelSecond3_无凸度.x)/2,(o.ptSteelSecond2_无凸度.y+o.ptSteelSecond3_无凸度.y)/2,0),h=_.y-_.x*c,u=(t.O3_y.y-t.O3_y.x*l-h)/(c-l),p=c*u+h;o.Steel_O4_2_y=new a.McGePoint3d(u,p,0),o.Steel_O4_2_z=new a.McGePoint3d(-u,p,0),o.RadiusSecondSteel4=o.ptSteelSecond2_无凸度.distanceTo(o.Steel_O4_2_y),o.Steel_Radian_R4=A.getArcRadianByTwoPoint(o.ptSteelSecond2_无凸度,o.ptSteelSecond3_无凸度,o.RadiusSecondSteel4)}o.R_HookedBar1_拱墙=E.Dia半圆弯钩直径计算(o.DiameterN12,o.DiameterN5,o.DiameterN678),o.R_HookedBar2_绑扎段=E.Dia半圆弯钩直径计算(o.DiameterN12+o.DiameterN34,o.DiameterN5,o.DiameterN678),o.R_HookedBar3_仰拱=E.Dia半圆弯钩直径计算(o.DiameterN34,o.DiameterN5,o.DiameterN678),o.Len_HookedBar1_拱墙=E.Len半圆钢筋展开段长度(o.R_HookedBar1_拱墙,e.PeiJin.IsAntiSeismic),o.Len_HookedBar2_绑扎段=E.Len半圆钢筋展开段长度(o.R_HookedBar2_绑扎段,e.PeiJin.IsAntiSeismic),o.Len_HookedBar3_仰拱=E.Len半圆钢筋展开段长度(o.R_HookedBar3_仰拱,e.PeiJin.IsAntiSeismic),e.PeiJin.IsJqjs?(o.MarkRadiusFirst1=t.RadiusFirst1+o.offSetSteel_N,o.MarkRadiusFirst2=t.RadiusFirst2+o.offSetSteel_N,o.MarkRadiusFirst3=t.RadiusFirst3+o.offSetSteel_N,o.MarkRadiusFirst4=t.RadiusFirst4+o.offSetSteel_N,o.MarkRadiusFirst5=t.RadiusFirst5+o.offSetSteel_N,o.MarkRadiusSecond1=t.RadiusSecond1-o.offSetSteel_W,o.MarkRadiusSecond2=t.RadiusSecond2-o.offSetSteel_W,o.MarkRadiusSecond4=o.RadiusSecondSteel4,o.MarkRadiusSecond5=t.RadiusSecond5-o.offSetSteel_W):(o.MarkRadiusFirst1=w.CnRound(t.RadiusFirst1,1)+o.offSetSteel_N,o.MarkRadiusFirst2=w.CnRound(t.RadiusFirst2,1)+o.offSetSteel_N,o.MarkRadiusFirst3=w.CnRound(t.RadiusFirst3,1)+o.offSetSteel_N,o.MarkRadiusFirst4=w.CnRound(t.RadiusFirst4,1)+o.offSetSteel_N,o.MarkRadiusFirst5=w.CnRound(t.RadiusFirst5,1)+o.offSetSteel_N,o.MarkRadiusSecond1=w.CnRound(t.RadiusSecond1,1)-o.offSetSteel_W,o.MarkRadiusSecond2=w.CnRound(t.RadiusSecond2,1)-o.offSetSteel_W,o.MarkRadiusSecond4=o.RadiusSecondSteel4,o.MarkRadiusSecond5=w.CnRound(t.RadiusSecond5,1)-o.offSetSteel_W);const s=[];for(let d=0;d<t.SizeRow;d++){const c=t.Dms[d],l=new fn;l.W=d,l.radius_In_Arch=c.RadiusFirst_Arch+o.offSetSteel_N,l.radius_Out_Arch=c.RadiusSecond_Arch-o.offSetSteel_W,l.radius_In_Invert=c.RadiusFirst_Invert+o.offSetSteel_N,l.radius_Out_Invert=c.RadiusSecond_Invert-o.offSetSteel_W,l.length_Out_Arch=2*t.Radian_Arch1*l.radius_Out_Arch,l.length_In_Arch=2*t.Radian_Arch1*l.radius_In_Arch,l.length_Out_Invert=t.Radian_Invert外*l.radius_Out_Invert,l.length_In_Invert=t.Radian_Invert内*l.radius_In_Invert,s.push(l)}o.dmSizes=s,e.PeiJin.IsZjcyHRB400?o.SteelChar="$":o.SteelChar="^",e.PeiJin.IsN5_HRB400?o.N5SteelChar="$":o.N5SteelChar="!"}CalcSteelHotData(i){super.CalcSteelHotData(i);const n=i.Property,e=i.SteelData,o=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelCenter),0,1,!0,!0).getMcDbEntity(),s=o.getLength().val-o.getDistAtPoint(o.getClosestPointTo(o.getPointAt(o.numVerts()-2).val,!1).val).val;n.AreaLength.number1_SameThick_WallArch=Math.floor(n.AreaLength.Len_Pj_Cen_Sgfys/e.SpacingN678+.5),n.AreaLength.number3_DiffThick_Invert=Math.floor((n.AreaLength.Len_Pj_Center_全环-n.AreaLength.Len_Pj_Cen_Sgfys-s)/2/e.SpacingN678+.5),n.AreaLength.number4_SameThick_Invert=Math.floor(s/e.SpacingN678+.5),n.AreaLength.number_Around=n.AreaLength.number1_SameThick_WallArch+n.AreaLength.number3_DiffThick_Invert*2+n.AreaLength.number4_SameThick_Invert}InitColorAndCoords(i,n){i.LinData;const e=i.Property;super.InitColorAndCoords(i,n),e.FrameCoords.Pj.ptNote_TopLeft1=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+260,e.FrameCoords.Pj.ptBase1.y-180,0),e.FrameCoords.Pj.ptNote_TopLeft2=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+70,e.FrameCoords.Pj.ptBase2.y-225,0),e.FrameCoords.Pj["ptPm_TopLeftⅠ_Ⅰ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+50,e.FrameCoords.Pj.ptBase1.y-180,0),e.FrameCoords.Pj["ptPm_TopLeftⅡ_Ⅱ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+50,e.FrameCoords.Pj.ptBase1.y-240,0),e.FrameCoords.Pj["ptPm_TopLeftⅢ_Ⅲ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+150,e.FrameCoords.Pj.ptBase1.y-180,0),e.FrameCoords.Pj["ptPm_TopLeftⅣ_Ⅳ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+150,e.FrameCoords.Pj.ptBase1.y-240,0),e.FrameCoords.Pj.ptDetail_VerticalBarLeft=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+70,e.FrameCoords.Pj.ptBase2.y-30,0),e.FrameCoords.Pj.ptDetail_SameThick_Arch=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+73,e.FrameCoords.Pj.ptBase2.y-45,0),e.FrameCoords.Pj.ptDetail_DiffThick_Invert=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+73,e.FrameCoords.Pj.ptBase2.y-65,0),e.FrameCoords.Pj.ptDetail_SameThick_Invert=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+73,e.FrameCoords.Pj.ptBase2.y-85,0),e.FrameCoords.Pj.ptDetail_HookBarTitleTopMid=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+102,e.FrameCoords.Pj.ptBase2.y-105,0),e.FrameCoords.Pj.ptDetail_SemiHookRightDown=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+200,e.FrameCoords.Pj.ptBase2.y-40,0),e.FrameCoords.Pj.ptDetail_StraightHookRightDown=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+200,e.FrameCoords.Pj.ptBase2.y-110,0),e.FrameCoords.Pj.ptTable_DmccTopMid=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+315,e.FrameCoords.Pj.ptBase2.y-40,0)}}class An{InitFramCommonData(i){}InitFramHotData(i){}}class Wo{constructor(){this.radius_Center_Arch=0,this.radius_Center_Invert=0,this.length_Center_Arch=0,this.length_Center_Invert=0,this.lengthFixedValue_Center_ArchWall=0,this.lengthFixedValue_Center_Invert=0}}class Zo{constructor(){this.diA接头厚度=32,this.diB接头厚度=16}}class Eo extends An{InitFramCommonData(i){const n=i.Data,e=i.Setting,t=i.LinData,o=i.FramData;let s=0;switch(n.Gj.Gjcs.Gj_style){case ut.GSGJ4:s=22;break;case ut.GSGJ3:s=22;break}o.Ylbx_Gq=n.Gj.Gjcs.Ylbx_Gq/10,o.Ylbx_Yg=n.Gj.Gjcs.Ylbx_Yg/10,o.RadiusFramFourth5=o.RadiusFramThird5+t.m2,o.Fram拱墙初喷厚度=n.Gj.Gjcs.Thick_Cp/10,o.Fram仰拱初喷厚度=o.Fram拱墙初喷厚度,e.GangJia.CPsz.IsCPbt&&(o.Fram仰拱初喷厚度=e.GangJia.CPsz.YgCPValue),o.Gjxh=n.Gj.Gjcs.GjXh1,o.FramThick=n.Gj.Gjcs.Thick/10,o.Protect_In=w.CnRound(t.m1-o.Fram拱墙初喷厚度-o.FramThick,5),o.Protect_Yg=w.CnRound(t.m2-o.Fram仰拱初喷厚度-o.FramThick,5),o.rad_E=r.Ang2Rad(n.Gj.Gjcs.AngleOfE),o.Rad_A=t.Radian_Arch1*2/3,o.Len_Sjmg=n.Gj.Gjcs.Len_Sjmg/10,o.RadiusFramThird1=t.RadiusSecond1+o.Ylbx_Gq,o.RadiusFramThird2=t.RadiusSecond2+o.Ylbx_Gq,o.RadiusFramThird3=t.RadiusSecond3+o.Ylbx_Gq,o.RadiusFramThird4=t.RadiusSecond4+o.Ylbx_Yg,o.RadiusFramThird5=t.RadiusSecond5+o.Ylbx_Yg,o.RadiusFramFourth1=o.RadiusFramThird1+t.m1,o.RadiusFramFourth2=o.RadiusFramThird2+t.m1,o.RadiusFramFourth3=o.RadiusFramThird3+t.m1,o.RadiusFramFourth4=o.RadiusFramThird4+t.m2,o.RadiusFramFourth5=o.RadiusFramThird5+t.m2,o.RadiusFramCenter1=o.RadiusFramFourth1-o.Fram拱墙初喷厚度-o.FramThick/2,o.RadiusFramCenter2=o.RadiusFramFourth2-o.Fram拱墙初喷厚度-o.FramThick/2,o.RadiusFramCenter3=o.RadiusFramFourth3-o.Fram拱墙初喷厚度-o.FramThick/2,o.RadiusFramCenter4=o.RadiusFramFourth4-o.Fram仰拱初喷厚度-o.FramThick/2,o.RadiusFramCenter5=o.RadiusFramFourth5-o.Fram仰拱初喷厚度-o.FramThick/2,o.RadiusFramIn1=o.RadiusFramCenter1-o.FramThick/2+s/100/2,o.RadiusFramIn2=o.RadiusFramCenter2-o.FramThick/2+s/100/2,o.RadiusFramIn3=o.RadiusFramCenter3-o.FramThick/2+s/100/2,o.RadiusFramIn4=o.RadiusFramCenter4-o.FramThick/2+s/100/2,o.RadiusFramIn5=o.RadiusFramCenter5-o.FramThick/2+s/100/2,o.RadiusFramOut1=o.RadiusFramCenter1+o.FramThick/2-s/100/2,o.RadiusFramOut2=o.RadiusFramCenter2+o.FramThick/2-s/100/2,o.RadiusFramOut3=o.RadiusFramCenter3+o.FramThick/2-s/100/2,o.RadiusFramOut4=o.RadiusFramCenter4+o.FramThick/2-s/100/2,o.RadiusFramOut5=o.RadiusFramCenter5+o.FramThick/2-s/100/2;const d=[];for(let c=0;c<t.SizeRow;c++){const l=new Wo;l.W=c,l.radius_Center_Arch=t.Dms[c].RadiusSecond_Arch+o.Ylbx_Gq+o.Protect_In+o.FramThick/2,l.radius_Center_Invert=t.Dms[c].RadiusSecond_Invert+o.Ylbx_Yg+o.Protect_Yg+o.FramThick/2,l.length_Center_Arch=l.radius_Center_Arch*t.Radian_Arch1,l.length_Center_Invert=l.radius_Center_Invert*t.Radian_Invert外,d.push(l)}o.framDms=d}InitFramHotData(i){const n=i.Data;i.Setting;const e=i.Property,t=i.LinData,o=i.FramData,s=[],d=e.ContourPoints.Gj.DicFramCen_Gq.ptFramCen_Y2,c=e.ContourPoints.Gj.DicFramCen_Gq.ptFramCen_Y3,l=new a.McGePoint3d(d.x,d.y,0).distanceTo(new a.McGePoint3d(c.x,c.y,0)),_=e.ContourPoints.Gj.DicFramCen_Yg.pt中直边点左,h=e.ContourPoints.Gj.DicFramCen_Yg.ptFramCen_Yg1;_.distanceTo(h),(t.Radian_Invert外-o.rad_E)/2;for(let u=0;u<t.SizeRow;u++){var P=o.framDms[u];const p=new Zo,M=2*t.Radian_Arch1*P.radius_Center_Arch,g=2*t.Radian2*o.RadiusFramCenter2,C=2*t.Radian_Widest_outAll*o.RadiusFramCenter3;p.length_Center_ArchWall=M+g+C+l*2;let y=0;n.Gj.Gjcs.IsGq?(y=6*32+2*16,p.length_Center_Invert=0):(y=10*32+2*16,p.length_Center_Invert=e.AreaLength.Len_Cen_Yg-t.Radian_Invert外*(P.radius_Center_Invert-o.RadiusFramCenter5)),p.length_Center_Around=p.length_Center_ArchWall+p.length_Center_Invert,p.length_Center_Around_扣除接头厚度=p.length_Center_Around-y/100,p.A单元长度_不扣接头=t.Radian_Arch1/1.5*P.radius_Center_Arch,p.A单元件数=3,p.B单元长度_不扣接头=t.Radian2*o.RadiusFramCenter2+t.Radian_Widest_inUp*o.RadiusFramCenter3,p.B单元件数=2,p.C单元件数=2,n.Gj.Gjcs.IsGq?(p.C单元长度_不扣接头=l+t.Radian_Widest_outDown*o.RadiusFramCenter3,p.D单元长度_不扣接头=0,p.E单元长度_不扣接头=0):(p.C单元长度_不扣接头=l+t.Radian_Widest_outDown*o.RadiusFramCenter3,p.D单元长度_不扣接头=(e.AreaLength.Len_Cen_Yg-o.rad_E*P.radius_Center_Invert)/2+(t.Radian_Invert外-o.rad_E)*(P.radius_Center_Invert-o.RadiusFramCenter5)/2,p.D单元件数=2,p.E单元长度_不扣接头=o.rad_E*P.radius_Center_Invert,p.E单元件数=1),s.push(p)}o.hotDatas=s}}class ke{CalcPt3dColFirst(i){try{return this.CalculateCoordinatesFirst(i)}catch(n){return null}finally{}}CalcPt3dColSecond(i){try{return this.CalculateCoordinatesSecond(i)}catch(n){return null}}CalcPt3dColForth(i){try{return this.CalculateCoordinatesFourth(i)}catch(n){return null}}CalcPt3dColForth_Yg(i){try{return this.CalculateCoordinatesFourth_Yg(i)}catch(n){return null}}CalcPt3dColThird_Ylbx_Gq(i){try{return this.CalculateCoordinatesThird_Ylbx_Gq(i)}catch(n){return null}}CalcPt3dColThird_Ylbx_Yg(i){try{return this.CalculateCoordinatesThird_Ylbx_Yg(i)}catch(n){return null}}CalculateCoordinatesFirst(i){return null}CalculateCoordinatesSecond(i){return null}CalculateCoordinatesThird_Ylbx_Gq(i){return null}CalculateCoordinatesThird_Ylbx_Yg(i){return null}CalculateCoordinatesFourth(i){return null}CalculateCoordinatesFourth_Yg(i){return null}}let Vo=class extends ke{CalculateCoordinatesFirst(i){const n=i.LinData,e=new Map,t=n.b_0+n.w/2,o=n.O4_1_y.y-Math.sqrt(Math.pow(n.RadiusFirst4,2)-Math.pow(t-n.O4_1_y.x,2)),s=new a.McGePoint3d(t,o,0),d=r.PolarPoint(n.O3_y,-n.Radian_Widest_inDown,n.RadiusFirst3),c=r.PolarPoint(n.O3_y,n.Radian_Widest_inUp,n.RadiusFirst3),l=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,n.RadiusFirst1),_=new a.McGePoint3d(s.x,s.y,Math.tan(n.Radian_NearSgArc内/4)),h=new a.McGePoint3d(d.x,d.y,Math.tan(n.Radian_Widest_inAll/4)),P=new a.McGePoint3d(c.x,c.y,Math.tan(n.Radian2/4)),u=new a.McGePoint3d(l.x,l.y,Math.tan(n.Radian_Arch1/2)),p=new a.McGePoint3d(-l.x,l.y,Math.tan(n.Radian2/4)),M=new a.McGePoint3d(-c.x,c.y,Math.tan(n.Radian_Widest_inAll/4)),g=new a.McGePoint3d(-d.x,d.y,Math.tan(n.Radian_NearSgArc内/4)),C=new a.McGePoint3d(-s.x,s.y,Math.tan(n.Radian_Invert内/4));return e.set("ptFirst_Y2",_),e.set("ptFirst_Y3",h),e.set("ptFirst_Y4",P),e.set("ptFirst_Y5",u),e.set("ptFirst_Z5",p),e.set("ptFirst_Z4",M),e.set("ptFirst_Z3",g),e.set("ptFirst_Z2",C),e.set("100ptFirst_Y2",_),e}CalculateCoordinatesSecond(i){const n=i.Setting,e=i.LinData,t=new Map;let o,s;if(n.ChenQi.Cqdm.Wlkxq){const C=r.PolarPoint(e.O_Invert,-e.Radian_Widest_inDown,e.RadiusSecond5);s=r.PolarPoint(e.O4_1_y,-e.Radian_Widest_inDown,e.RadiusFirst4+e.d1),o=A.IntsOfLineToCircle5P(e.O_Invert,e.RadiusSecond5,C,s,"MinY")}else o=r.PolarPoint(e.O4_1_y,-e.Radian_Widest_inDown-e.Radian_NearSgArc内,e.RadiusFirst4+e.d2),s=r.PolarPoint(e.O4_1_y,-e.Radian_Widest_inDown,e.RadiusFirst4+e.d1);const d=r.PolarPoint(e.O3_y,e.Radian_Widest_inUp,e.RadiusSecond3),c=r.PolarPoint(e.O1,Math.PI/2-e.Radian_Arch1,e.RadiusSecond1),l=new a.McGePoint3d(o.x,o.y,Math.tan(e.Radian_NearSgArc外/4)),_=new a.McGePoint3d(s.x,s.y,Math.tan(e.Radian_Widest_inAll/4)),h=new a.McGePoint3d(d.x,d.y,Math.tan(e.Radian2/4)),P=new a.McGePoint3d(c.x,c.y,Math.tan(e.Radian_Arch1/2)),u=new a.McGePoint3d(-c.x,c.y,Math.tan(e.Radian2/4)),p=new a.McGePoint3d(-d.x,d.y,Math.tan(e.Radian_Widest_inAll/4)),M=new a.McGePoint3d(-_.x,_.y,Math.tan(e.Radian_NearSgArc外/4)),g=new a.McGePoint3d(-l.x,l.y,Math.tan(e.Radian_Invert外/4));return t.set("ptSecond_Y2",l),t.set("ptSecond_Y3",_),t.set("ptSecond_Y4",h),t.set("ptSecond_Y5",P),t.set("ptSecond_Z5",u),t.set("ptSecond_Z4",p),t.set("ptSecond_Z3",M),t.set("ptSecond_Z2",g),t.set("100ptSecond_Y2",l),t}CalculateCoordinatesThird_Ylbx_Gq(i){const n=i.LinData,e=new Map,t=r.PolarPoint(n.O3_y,-n.Radian_Widest_inDown,n.RadiusThird3),o=r.PolarPoint(n.O3_y,n.Radian_Widest_inUp,n.RadiusThird3),s=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,n.RadiusThird1),d=Math.tan(Math.PI/2-n.Radian_Widest_outDown);t.y-d*t.x;const c=A.IntsOfLineToCircle5P(n.O4_2_y,n.RadiusSecond4+n.ylbx_Gq,new a.McGePoint3d(0,-n.H_ngToBqpt,0),new a.McGePoint3d(1,-n.H_ngToBqpt,0),"MaxX"),l=A.getArcRadianByTwoPoint(c,t,n.RadiusSecond4+n.ylbx_Gq),_=new a.McGePoint3d(c.x,c.y,Math.tan(l/4)),h=new a.McGePoint3d(t.x,t.y,Math.tan(n.Radian_Widest_inAll/4)),P=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian2/4)),u=new a.McGePoint3d(s.x,s.y,Math.tan(n.Radian_Arch1/2)),p=new a.McGePoint3d(-u.x,u.y,Math.tan(n.Radian2/4)),M=new a.McGePoint3d(-o.x,o.y,Math.tan(n.Radian_Widest_inAll/4)),g=new a.McGePoint3d(-h.x,h.y,Math.tan(l/4)),C=new a.McGePoint3d(-_.x,_.y,0);return e.set("ptThird_Y2",_),e.set("ptThird_Y3",h),e.set("ptThird_Y4",P),e.set("ptThird_Y5",u),e.set("ptThird_Z5",p),e.set("ptThird_Z4",M),e.set("ptThird_Z3",g),e.set("ptThird_Z2",C),e}CalculateCoordinatesThird_Ylbx_Yg(i){const n=i.LinData,e=new Map,t=A.IntsOfLineToCircle5P(n.O4_2_z,n.RadiusThird4,new a.McGePoint3d(0,-n.H_ngToBqpt,0),new a.McGePoint3d(1,-n.H_ngToBqpt,0),"MinX"),o=r.PolarPoint(n.O_Invert,Math.PI*3/2-n.Radian_Invert外/2,n.RadiusThird5),s=A.getArcRadianByTwoPoint(t,o,n.RadiusThird4),d=new a.McGePoint3d(t.x,t.y,Math.tan(s/4)),c=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_Invert外/4)),l=new a.McGePoint3d(-o.x,o.y,Math.tan(s/4)),_=new a.McGePoint3d(-t.x,t.y,0);return e.set("pt5th1",d),e.set("pt5th2",c),e.set("pt5th3",l),e.set("pt5th4",_),e}CalculateCoordinatesFourth(i){const n=i.LinData,e=new Map,t=n.O4_2_y.x+Math.sqrt(Math.pow(n.RadiusSecond4,2)-Math.pow(-n.H_ngToBqpt-n.O4_2_y.y,2)),o=r.PolarPoint(n.O3_y,-n.Radian_Widest_outDown,n.RadiusFourth3),s=r.PolarPoint(n.O3_y,n.Radian_Widest_inUp,n.RadiusFourth3),d=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,n.RadiusFourth1),c=Math.tan(Math.PI/2-n.Radian_Widest_outDown),l=o.y-c*o.x,_=new a.McGePoint3d(t,-n.H_ngToBqpt,0),h=new a.McGePoint3d((-n.H_ngToBqpt-l)/c,-n.H_ngToBqpt,0),P=new a.McGePoint3d(o.x,o.y,Math.tan((n.Radian_Widest_outDown+Math.PI/2-n.Radian_Arch1-n.Radian2)/4)),u=new a.McGePoint3d(s.x,s.y,Math.tan(n.Radian2/4)),p=new a.McGePoint3d(d.x,d.y,Math.tan(n.Radian_Arch1/2)),M=new a.McGePoint3d(-p.x,p.y,Math.tan(n.Radian2/4)),g=new a.McGePoint3d(-u.x,u.y,Math.tan((n.Radian_Widest_outDown+Math.PI/2-n.Radian_Arch1-n.Radian2)/4)),C=new a.McGePoint3d(-P.x,P.y,0),y=new a.McGePoint3d(-h.x,h.y,0),F=new a.McGePoint3d(-_.x,_.y,0);return e.set("ptForth_Y1",_),e.set("ptForth_Y2",h),e.set("ptForth_Y3",P),e.set("ptForth_Y4",u),e.set("ptForth_Y5",p),e.set("ptForth_Z5",M),e.set("ptForth_Z4",g),e.set("ptForth_Z3",C),e.set("ptForth_Z2",y),e.set("ptForth_Z1",F),e}CalculateCoordinatesFourth_Yg(i){const n=i.LinData,e=new Map,t=A.IntsOfLineToCircle5P(n.O4_2_z,n.RadiusFourth4,new a.McGePoint3d(0,-n.H_ngToBqpt,0),new a.McGePoint3d(1,-n.H_ngToBqpt,0),"MinX"),o=r.PolarPoint(n.O_Invert,Math.PI*3/2-n.Radian_Invert外/2,n.RadiusFourth5),s=A.getArcRadianByTwoPoint(t,o,n.RadiusFourth4),d=new a.McGePoint3d(t.x,t.y,Math.tan(s/4)),c=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_Invert外/4)),l=new a.McGePoint3d(-o.x,o.y,Math.tan(s/4)),_=new a.McGePoint3d(-t.x,t.y,0);return e.set("pt5th1",d),e.set("pt5th2",c),e.set("pt5th3",l),e.set("pt5th4",_),e}};class ze{DrawLining(i,n){}DrawLiningPartial(i,n){}DrawSteelDrawingLining(i,n){}DrawFramDrawingLining(i,n){}}class Ye{DrawInvertRockBolt(i,n,e,t,o){}DrawArchWallRockBolt(i,n,e,t,o){i.Data,i.Setting;const s=i.Property;try{const d=s.EntityIds.DicLinIdCol.get("ForthId_Gq")[0],c=d.getMcDbEntity();let l=[];const _=1,h=c.getClosestPointTo(new a.McGePoint3d(0,n.H_ngToWidest+n.RadiusFourth1,0),!1).val,P=new a.McGePoint3d(-o.x,o.y,0),u=new a.McGePoint3d(-t.x,t.y,0);let p=new a.McGePoint3d;if(n.Dh_Arch_y!=0&&n.Lm_Arch_y!=0){const g=c.getDistAtPoint(h).val-c.getDistAtPoint(o).val-n.Dh_Arch_y/2,C=Math.floor(g/n.Dh_Arch_y)*2+1;if(C>0){let y=c.getDistAtPoint(h).val-n.Dh_Arch_y*.5/2;for(let F=0;F<C;F++){const I=c.getPointAtDist(y).val,T=A.getNormalAngleOfPoint(I,d);let R="CONTINUOUS";l.push(r.addLine(I,r.PolarPoint(I,T,n.Lm_Arch_y),2,R,.5/_)),p=I,y=y-n.Dh_Arch_y*.5}}else p=o}if(n.Dh_Wall_y!=0&&n.Lm_Wall_y!=0){const g=c.getDistAtPoint(p).val-c.getDistAtPoint(t).val,C=Math.floor(g/n.Dh_Wall_y)*2;let y=c.getDistAtPoint(p).val-n.Dh_Wall_y*.5;for(let F=0;F<C;F++){const I=c.getPointAtDist(y).val,T=A.getNormalAngleOfPoint(I,d);let R="CONTINUOUS";l.push(r.addLine(I,r.PolarPoint(I,T,n.Lm_Wall_y),3,R,.5/_)),y=y-n.Dh_Wall_y*.5}}let M=new a.McGePoint3d;if(n.Dh_Arch_z!=0&&n.Lm_Arch_z!=0){const g=c.getDistAtPoint(P).val-c.getDistAtPoint(h).val-n.Dh_Arch_z/4,C=Math.floor(g/n.Dh_Arch_z)*2+1;if(C>0){let y=c.getDistAtPoint(h).val+n.Dh_Arch_z*.5/2;for(let F=0;F<C;F++){const I=c.getPointAtDist(y).val,T=A.getNormalAngleOfPoint(I,d);let R="CONTINUOUS";l.push(r.addLine(I,r.PolarPoint(I,T,n.Lm_Arch_z),10,R,.5/_)),M=I,y=y+n.Dh_Arch_z*.5}}else M=P}if(n.Dh_Wall_z!=0&&n.Lm_Wall_y!=0){const g=c.getDistAtPoint(u).val-c.getDistAtPoint(M).val,C=Math.floor(g/n.Dh_Wall_z)*2;let y=c.getDistAtPoint(M).val+n.Dh_Wall_z*.5;for(let F=0;F<C;F++){const I=c.getPointAtDist(y).val,T=A.getNormalAngleOfPoint(I,d);let R="CONTINUOUS";l.push(r.addLine(I,r.PolarPoint(I,T,n.Lm_Wall_z),5,R,.5/_)),y=y+n.Dh_Wall_z*.5}}s.EntityIds.DicLinIdCol.set("MgIdCol",l)}catch(d){console.log("绘制锚杆错误!",d)}}}let Ln=class extends Ye{DrawMg_Gq(i){const n=i.Property,e=i.LinData,t=n.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y3"),o=n.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y2");let s=new a.McGePoint3d;e.AngleGb>=e.Angle1*2?s=r.PolarPoint(e.O2_y,Math.PI/2-e.AngleGb/2/180*Math.PI,e.RadiusFourth2):s=r.PolarPoint(e.O1,Math.PI/2-e.AngleGb/2/180*Math.PI,e.RadiusFourth1),super.DrawArchWallRockBolt(i,e,t,o,s)}};class at{static Lin衬砌分层标示(i,n,e,t,o){const s=[],d=i,c=r.PolarPoint(d,n,e),l=r.PolarPoint(c,Math.PI/2,18),_=r.PolarPoint(c,Math.PI/2,6),h=r.PolarPoint(c,Math.PI/2,12);return s.push(r.addLine3P(d,c,7)),s.push(r.addLine3P(c,l,7)),s.push(r.addLine2P(c,r.PolarPoint(c,0,t))),s.push(r.addLine2P(_,r.PolarPoint(_,0,t))),s.push(r.addLine2P(h,r.PolarPoint(h,0,t))),s.push(r.addText(new a.McGePoint3d(c.x+10,c.y+3,0),"二次衬砌",o,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),s.push(r.addText(new a.McGePoint3d(_.x+10,_.y+3,0),"防水板",o,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),s.push(r.addText(new a.McGePoint3d(h.x+10,h.y+3,0),"初期支护",o,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),s}static Lin衬砌分层标示加预留变形(i,n,e,t,o){const s=[],d=i,c=r.PolarPoint(d,n,e),l=r.PolarPoint(c,Math.PI/2,24),_=r.PolarPoint(c,Math.PI/2,6),h=r.PolarPoint(c,Math.PI/2,12),P=r.PolarPoint(c,Math.PI/2,18);return s.push(r.addLine3P(d,c,7)),s.push(r.addLine3P(c,l,7)),s.push(r.addLine2P(c,r.PolarPoint(c,0,t))),s.push(r.addLine2P(_,r.PolarPoint(_,0,t))),s.push(r.addLine2P(h,r.PolarPoint(h,0,t))),s.push(r.addLine2P(P,r.PolarPoint(P,0,t))),s.push(r.addText(new a.McGePoint3d(c.x+10,c.y+3,0),"二次衬砌",o,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),s.push(r.addText(new a.McGePoint3d(_.x+10,_.y+3,0),"防水板",o,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),s.push(r.addText(new a.McGePoint3d(h.x+10,h.y+3,0),"预留变形",o,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),s.push(r.addText(new a.McGePoint3d(h.x+10,P.y+3,0),"初期支护",o,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),s}static drawLiningMark(i,n,e,t,o){console.debug("===== drawLiningMark 开始 =====");const s=[];try{const d=i instanceof a.McGePoint3d?i:new a.McGePoint3d(0,0,0),c=typeof n=="number"?n:Math.PI/4,l=typeof e=="number"&&e>0?e:50,_=typeof t=="number"&&t>0?t:20,h=typeof o=="number"&&o>0?o:10,P=h*2.5,u=d,p=r.PolarPoint(u,c,l),M=[0,2,1].map(y=>r.PolarPoint(p,Math.PI/2,P*y)),g=["二次衬砌","防水板","初期支护"];for(let y=0;y<M.length;y++){const F=M[y],I=r.PolarPoint(F,0,_);s.push(r.addLine2P(F,I));const T=new a.McGePoint3d((F.x+I.x)/2,(F.y+I.y)/2,0);s.push(r.addText(T,g[y],h,0,1,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid))}s.push(r.addLine3P(u,p,1));const C=r.PolarPoint(p,Math.PI/2,P*3);s.push(r.addLine3P(p,C,2)),console.log("drawLiningMark 完成")}catch(d){console.error("drawLiningMark 错误:",d)}return s}static drawLiningMarkWithReserve(i,n,e,t,o){console.log("===== drawLiningMarkWithReserve 开始 =====");const s=[];try{const d=i instanceof a.McGePoint3d?i:new a.McGePoint3d(0,0,0),c=typeof n=="number"?n:Math.PI/4,l=typeof e=="number"&&e>0?e:50,_=typeof t=="number"&&t>0?t:20,h=typeof o=="number"&&o>0?o:10,P=h*2.5,u=d,p=r.PolarPoint(u,c,l),M=[0,1,2,3].map(y=>r.PolarPoint(p,Math.PI/2,P*y)),g=["二次衬砌","防水板","预留变形","初期支护"];for(let y=0;y<M.length;y++){const F=M[y],I=r.PolarPoint(F,0,_);s.push(r.addLine2P(F,I));const T=new a.McGePoint3d((F.x+I.x)/2,(F.y+I.y)/2,0);s.push(r.addText(T,g[y],h,0,1,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid))}s.push(r.addLine3P(u,p,1));const C=r.PolarPoint(p,Math.PI/2,P*4);s.push(r.addLine3P(p,C,2)),console.log("drawLiningMarkWithReserve 完成")}catch(d){console.error("drawLiningMarkWithReserve 错误:",d)}return s}static Lin底板分层标示(i,n,e,t,o){const s=[],d=i,c=r.PolarPoint(d,Math.PI*3/2,e),l=r.PolarPoint(c,n,t),_=r.PolarPoint(c,Math.PI/2,5),h=r.PolarPoint(_,n,t);return s.push(r.addLine3P(d,c,7)),s.push(r.addLine3P(c,l,7)),s.push(r.addLine3P(_,h,7)),s.push(r.addText(r.PolarPoint(r.MidPoint(c,l),Math.PI/2,o/2+.25),"找平层",o,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),s.push(r.addText(r.PolarPoint(r.MidPoint(_,h),Math.PI/2,o/2+.25),"底 板",o,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),s}static AddHatching(i,n,e,t,o,s,d){const c=[];try{const l=r.GetDipAngle(i,n),_=r.PolarPoint(i,l,-e),h=r.PolarPoint(n,l,e);c.push(r.addLine3P(i,_,s)),c.push(r.addLine3P(n,h,s));const P=r.PolarPoint(_,l,-o*2/3),u=r.PolarPoint(h,l,o*2/3);return d?(c.push(r.addText(P,t,o,0,.7,l,a.McDb.TextHorzMode.kTextMid,a.McDb.TextVertMode.kTextVertMid)),c.push(r.addText(u,t,o,0,.7,l,a.McDb.TextHorzMode.kTextMid,a.McDb.TextVertMode.kTextVertMid))):(c.push(r.addText(P,t,o,0,.7,l+Math.PI/2,a.McDb.TextHorzMode.kTextMid,a.McDb.TextVertMode.kTextVertMid)),c.push(r.addText(u,t,o,0,.7,l-Math.PI/2,a.McDb.TextHorzMode.kTextMid,a.McDb.TextVertMode.kTextVertMid))),c}catch(l){return c}}static Wyjb(i){return i.includes("Ⅲ")||i.includes("III")||i.includes("I&I&I")?3:i.includes("Ⅱ")||i.includes("II")||i.includes("I&I")?2:i.includes("Ⅳ")||i.includes("IV")||i.includes("I&V")?4:i.includes("Ⅵ")||i.includes("VI")||i.includes("V&I")?6:(i.includes("Ⅴ")||i.includes("V"),5)}static GetPartDescription(i){let n="无";switch(i){case W.Gb:n="拱部";break;case W.Gbjb:n="拱部局部";break;case W.Gq:n="拱墙";break;case W.Qh:n="全环";break;case W.No:n="无";break}return n}static CalSgArea(i,n,e,t){try{const o=e.getMcDbEntity();if(!o)return 0;const s=[],d=o.numVerts();for(let I=0;I<d;I++){let T=I+Math.floor(d/2);T>=d&&(T-=d);const R=o.getPointAt(T),L=o.getBulgeAt(T);s.push(new a.McGePoint3d(R.val.x,R.val.y,L))}const c=r.addPline(s,0,1,1,!0,!1),l=c.getMcDbEntity();if(!l)return 0;const _=o.getClosestPointTo(i,!1).val,h=o.getClosestPointTo(n,!1).val,P=l.splitCurves([_,h]),u=A.IntsOfLineToCurve(new a.McGePoint3d((i.x+n.x)/2,0,0),new a.McGePoint3d((i.x+n.x)/2,-1,0),e,"MinY");let p=null;for(const I of P.aryVal){const R=I.getClosestPointTo(u,!1).val;if(u.distanceTo(R)<.001){p=r.AppendEntity(I);break}}if(!p)return 0;const M=p.getMcDbEntity();if(!M)return 0;const g=[],C=M.numVerts();for(let I=0;I<C;I++){const T=M.getPointAt(I),R=I===C-1?0:M.getBulgeAt(I);g.push(new a.McGePoint3d(T.val.x,T.val.y,R))}g.push(t?new a.McGePoint3d(n.x,i.y,0):new a.McGePoint3d(i.x,n.y,0)),g.push(M.getPointAt(0).val);const y=r.addPline(g,.2,.2,4,!0,!1),F=y.getMcDbEntity();return F?(v.Erase(c),v.Erase(p),v.Erase(y),F.getArea().val):0}catch(o){return console.log("CalSgArea",o),0}}}var re=(D=>(D[D.None=0]="None",D[D.DrawAndCalculate=1]="DrawAndCalculate",D[D.DrawOnly=2]="DrawOnly",D))(re||{});class We{Dimensioning(i,n){this.DimLine(i),this.DimCenter(i),this.DimAngle(i),this.DimRadius(i),this.DimTcSlope(i,n),this.DrawDmbs(i)}DimLine(i){}DimAngle(i){}DimCenter(i){}DimRadius(i){}DrawDmbs(i){const n=i.Setting,e=i.Property,t=i.LinData;try{const o=[],s=r.PolarPoint(t.O1,Math.PI/3,t.RadiusFirst1+t.d1/2);n.ChenQi.Tssz.YlbxMode===re.DrawAndCalculate?m.JoinIdCol(o,at.Lin衬砌分层标示加预留变形(s,Math.PI/4,50,20,e.TextHeight.Height_Ht)):m.JoinIdCol(o,at.Lin衬砌分层标示(s,Math.PI/4,50,20,e.TextHeight.Height_Ht)),e.EntityIds.DicLinIdCol.set("Dmbs",o)}catch(o){console.log("错误代码 1110",o)}}DimTcSlope(i,n){i.Data,i.Setting;const e=i.Property,t=i.LinData,o=[];try{const s=new a.McGePoint3d(-t.b1_z+1,-(t.H_ngToLjm-1),0),d=r.PolarPoint(s,0,10),c=new a.McGePoint3d(t.b1_y-1,-(t.H_ngToLjm-1),0),l=r.PolarPoint(c,Math.PI,10),_=new a.McGePoint3d(-t.b1_z+3,-(t.H_ngToLjm-1),0),h=new a.McGePoint3d(t.b1_y-9,-(t.H_ngToLjm-1),0);switch(n){case ot.Sx160to350:case ot.DL5Center:t.railStyle==="有砟"&&(o.push(r.addLeader3WithoutCircle(new a.McGePoint3d(t.b1_z/2-10+t.RailCenterOffset,-t.H_ngToLjm+1,0),new a.McGePoint3d(t.b1_z/2-1+t.RailCenterOffset,-t.H_ngToLjm+1.18,0),!1)),o.push(r.addLeader3WithoutCircle(new a.McGePoint3d(-t.b1_y/2+10+t.RailCenterOffset,-t.H_ngToLjm+1,0),new a.McGePoint3d(-t.b1_y/2+1+t.RailCenterOffset,-t.H_ngToLjm+1.18,0),!1)),o.push(r.addText5(new a.McGePoint3d(t.b1_z/2-10+t.RailCenterOffset,-t.H_ngToLjm+1,0),"i≈0.02",e.TextHeight.Height_Ht,0,.7)),o.push(r.addText5(new a.McGePoint3d(-t.b1_y/2+1+t.RailCenterOffset,-t.H_ngToLjm+1.18,0),"i≈0.02",e.TextHeight.Height_Ht,0,.7)));break;case ot.SL4Center:case ot.SL160:o.push(r.addLeader3WithoutCircle(s,d,!1)),o.push(r.addLeader3WithoutCircle(c,l,!1)),o.push(r.addText5(_,"0.02",3.5,0,.7)),o.push(r.addText5(h,"0.02",3.5,0,.7));break;case ot.Fzkd:o.push(r.addLeader3WithoutCircle(d,s,!1)),o.push(r.addText5(_,"0.02",3.5,0,.7));break}e.EntityIds.DicLinIdCol.set("MarkTcPd",o)}catch(s){console.log("错误代码 1204",s)}}}let Jo=class extends We{DimLine(i){const n=i.Setting,e=i.Property,t=i.LinData,o=[];try{const s=new a.McGePoint3d(0,0,0),d=r.PolarPoint(t.O3_z,Math.PI,t.RadiusFourth3),c=r.PolarPoint(t.O3_y,0,t.RadiusFourth3),l=r.PolarPoint(t.O3_z,Math.PI,t.RadiusFirst3),_=r.PolarPoint(t.O3_y,0,t.RadiusFirst3),h=r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth5),P=r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusSecond5),u=r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFirst5),p=r.PolarPoint(t.O1,Math.PI/2,t.RadiusFirst1),M=r.PolarPoint(t.O1,Math.PI/2,t.RadiusSecond1),g=r.PolarPoint(t.O1,Math.PI/2,t.RadiusFourth1),C=new a.McGePoint3d(-20,-(t.H_ngToBqpt+2),0),y=r.PolarPoint(C,0,10),F=new a.McGePoint3d(-C.x,C.y,0),I=new a.McGePoint3d(-y.x,y.y,0),T=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z2"),R=e.ContourPoints.Cq.DicForth_Yg.get("pt5th1");if(t.railStyle==="有砟"){const f=new a.McGePoint3d(0,-t.dblHeight2,0);o.push(r.AddDimRotated5PScale(Math.PI/2,s,f,r.PolarPoint(s,0,10),10));const G=new a.McGePoint3d(-t.b1_z,-t.dblHeight1,0);o.push(r.AddDimRotated5PScale(Math.PI/2,G,r.PolarPoint(G,Math.PI/2,t.dblHeight1),r.PolarPoint(new a.McGePoint3d(-t.b1_z,3,0),0,5),10))}else{const f=new a.McGePoint3d(-t.d/2,0,0),G=new a.McGePoint3d(-t.d/2,-t.H_ngToLjm,0),O=new a.McGePoint3d(f.x+5,-t.H_ngToLjm/2,0);o.push(r.AddDimRotated5PScale(Math.PI/2,f,G,O,10))}o.push(r.AddDimRotated5PScale(Math.PI/2,P,u,r.PolarPoint(u,0,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,p,M,r.PolarPoint(M,0,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,M,g,r.PolarPoint(g,0,t.a+t.RadiusFourth2+10),10)),t.m2!==0&&o.push(r.AddDimRotated5PScale(Math.PI/2,h,P,r.PolarPoint(h,0,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,e.KeyPoint.ptEnd左,T,r.PolarPoint(s,Math.PI,t.a+t.RadiusFourth2+5),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,e.KeyPoint.ptEnd左,r.PolarPoint(d,Math.PI*3/2,t.H_zkToZb),r.PolarPoint(s,Math.PI,t.a+t.RadiusFourth2+5),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,d,r.PolarPoint(d,Math.PI*3/2,t.H_zkToZb),r.PolarPoint(s,Math.PI,t.a+t.RadiusFourth2+5),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,t.O4_1_z,s,r.PolarPoint(t.O4_1_z,0,5),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,t.O4_2_y,s,r.PolarPoint(t.O4_2_y,Math.PI,5),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,t.O3_z,s,r.PolarPoint(t.O2_z,Math.PI,5),10)),o.push(r.AddDimRotated5PScale(Math.PI,d,T,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth5+10),10)),o.push(r.AddDimRotated5PScale(Math.PI,T,R,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth5+10),10)),o.push(r.AddDimRotated5PScale(Math.PI,R,e.KeyPoint.ptStart左,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth5+10),10)),o.push(r.AddDimRotated5PScale(Math.PI,e.KeyPoint.ptStart左,new a.McGePoint3d(-(t.a-t.a_0)-t.d/2+t.RailCenterOffset,0,0),r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth5+10),10));const L=10*(t.b1_y_0+t.b1_z_0-t.d)/2;o.push(r.AddDimRotated6PNoDimLine(Math.PI,new a.McGePoint3d(-(t.a-t.a_0)-t.d/2+t.RailCenterOffset,0,0),new a.McGePoint3d(t.a-t.a_0+t.d/2+t.RailCenterOffset,0,0),r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth5+10),"d")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,e.KeyPoint.ptStart右,new a.McGePoint3d(t.a-t.a_0+t.d/2+t.RailCenterOffset,0,0),r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth5+10),(10*t.d).toFixed(0)+"+W-d+"+L.toFixed(0))),o.push(r.AddDimRotated5PScale(Math.PI,e.KeyPoint.ptStart右,c,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth5+10),10)),o.push(r.AddDimRotated5PScale(Math.PI,e.KeyPoint.ptStart左,e.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth5),10)),o.push(r.AddDimRotated5PScale(Math.PI,new a.McGePoint3d(t.b1_y,3,0),e.KeyPoint.ptEnd右,r.PolarPoint(new a.McGePoint3d(t.b1_y,3,0),Math.PI/2,e.TextHeight.Height_Ht),10)),o.push(r.AddDimRotated5PScale(Math.PI,new a.McGePoint3d(-t.b1_z,3,0),e.KeyPoint.ptEnd左,r.PolarPoint(new a.McGePoint3d(t.b1_y,3,0),Math.PI/2,e.TextHeight.Height_Ht),10)),o.push(r.AddDimRotated5PScale(Math.PI,l,r.PolarPoint(l,Math.PI,t.d1),l,10)),o.push(r.AddDimRotated5PScale(Math.PI,_,r.PolarPoint(_,0,t.d1),_,10)),n.ChenQi.Cqdm.MarkCur?(o.push(r.AddDimRotated5PScale(Math.PI/2,s,u,r.PolarPoint(s,0,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,s,p,r.PolarPoint(p,0,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,s,t.O1,r.PolarPoint(t.O1,0,10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,h,g,r.PolarPoint(s,0,t.a+t.RadiusFourth2+20),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,t.O_Invert,new a.McGePoint3d(-t.b1_z,0,0),r.PolarPoint(s,Math.PI,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI,l,new a.McGePoint3d(0,t.O2_z.y,0),r.PolarPoint(l,Math.PI/2,0),10)),o.push(r.AddDimRotated5PScale(Math.PI,_,new a.McGePoint3d(0,t.O2_y.y,0),r.PolarPoint(_,Math.PI/2,0),10)),o.push(r.AddDimRotated5PScale(Math.PI,new a.McGePoint3d(-e.KeyPoint.ptEnd左.x,e.KeyPoint.ptEnd左.y,0),s,r.PolarPoint(t.O2_y,Math.PI*3/2,8),10)),o.push(r.AddDimRotated5PScale(Math.PI,s,e.KeyPoint.ptEnd左,r.PolarPoint(t.O2_z,Math.PI*3/2,8),10)),o.push(r.AddDimRotated5PScale(Math.PI,d,c,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth5+15),10)),o.push(r.AddDimRotated5PScale(Math.PI,t.O1,t.O2_z,r.PolarPoint(t.O1,Math.PI*3/2,4),10))):(o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,s,u,r.PolarPoint(s,0,t.a+t.RadiusFourth2+10),"h[2]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,s,p,r.PolarPoint(p,0,t.a+t.RadiusFourth2+10),"h")),o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,s,t.O1,r.PolarPoint(t.O1,0,10),"h[1]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,h,g,r.PolarPoint(s,0,t.a+t.RadiusFourth2+20),"H")),o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,t.O_Invert,new a.McGePoint3d(-t.b1_z,0,0),r.PolarPoint(s,Math.PI,t.a+t.RadiusFourth2+10),"h[3]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,l,new a.McGePoint3d(0,t.O2_z.y,0),r.PolarPoint(l,Math.PI/2,0),"b[1]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,_,new a.McGePoint3d(0,t.O2_y.y,0),r.PolarPoint(_,Math.PI/2,0),"b[1]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,new a.McGePoint3d(-e.KeyPoint.ptEnd左.x,e.KeyPoint.ptEnd左.y,0),s,r.PolarPoint(t.O2_y,Math.PI*3/2,8),"b[2]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,s,e.KeyPoint.ptEnd左,r.PolarPoint(t.O2_z,Math.PI*3/2,8),"b[2]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,d,c,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth5+15),"B")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,t.O1,t.O2_z,r.PolarPoint(t.O1,Math.PI*3/2,4),"a"))),e.EntityIds.DicLinIdCol.set("DimLine",o)}catch(s){console.error("错误代码 1201","提示",s)}}DimAngle(i){i.Data,i.Setting;const n=i.Property,e=i.LinData,t=[];try{let o=0,s=0;e.RadiusFirst2<e.RadiusFirst1?(s=20,o=s+Math.abs(e.RadiusFirst1-e.RadiusFirst2)):(o=20,s=o+Math.abs(e.RadiusFirst1-e.RadiusFirst2));const d=s+e.RadiusFirst3-e.RadiusFirst2,c=new a.McGePoint3d(0,0,0),l=r.PolarPoint(e.O3_z,Math.PI,e.RadiusFourth3),_=r.PolarPoint(e.O3_y,0,e.RadiusFourth3),h=r.PolarPoint(e.O3_z,Math.PI,e.RadiusFirst3),P=r.PolarPoint(e.O3_y,0,e.RadiusFirst3),u=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFourth5),p=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusSecond5),M=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFirst5),g=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFirst1),C=r.PolarPoint(e.O1,Math.PI/2,e.RadiusSecond1),y=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFourth1),F=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y2"),I=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y3"),T=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y4"),R=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y5"),L=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z5"),f=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),G=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z3"),O=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),b=n.ContourPoints.Cq.DicSecond.get("ptSecond_Y2");t.push(r.add3PLineAngular(e.O1,g,L,o,new a.McGePoint3d(0,0,0),"",!0)),t.push(r.add3PLineAngular(e.O1,g,R,o,new a.McGePoint3d(0,0,0),"",!0)),t.push(r.add3PLineAngular(e.O2_z,L,f,s,new a.McGePoint3d(0,0,0),"",!0)),t.push(r.add3PLineAngular(e.O3_z,G,f,d,new a.McGePoint3d(0,0,0),"",!0)),t.push(r.add3PLineAngular(e.O_Invert,F,O,e.RadiusFirst5/3,new a.McGePoint3d(0,0,0),"",!0));const H=r.PolarPoint(r.PolarPoint(e.O4_2_y,-e.Radian_Widest_inDown-e.Radian_NearSgArc外/2,e.RadiusFirst4/2),Math.PI/2,30);t.push(r.add3PLineAngular(e.O4_2_y,I,b,e.RadiusFirst4/3,H,"",!0));const x=r.PolarPoint(r.PolarPoint(e.O4_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusFirst4/2),Math.PI/2,30);t.push(r.add3PLineAngular(e.O4_1_z,G,O,e.RadiusFirst4/3,x,"",!0)),n.EntityIds.DicLinIdCol.set("DimAngle",t)}catch(o){console.error("错误代码 1202","提示",o)}}DimCenter(i){i.Data,i.Setting;const n=i.Property,e=i.LinData;try{let t=[];t=m.JoinIdCol(t,m.CenterPoint4P(e.O1,e.O1,"O1",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O2_y,new a.McGePoint3d(e.O2_y.x-4,e.O2_y.y,0),"O2",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O2_z,new a.McGePoint3d(e.O2_z.x+1,e.O2_z.y,0),"O2",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O3_y,new a.McGePoint3d(e.O3_y.x-4,e.O3_y.y,0),"O3",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O3_z,new a.McGePoint3d(e.O3_z.x+1,e.O3_z.y,0),"O3",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O4_1_y,new a.McGePoint3d(e.O4_2_y.x+3,e.O4_2_y.y-n.TextHeight.Height_Ht/2,0),"O4",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O4_1_z,new a.McGePoint3d(e.O4_1_z.x-3,e.O4_1_z.y,0),"O4",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O_Invert,e.O_Invert,"O5",n.TextHeight.Height_Ht)),e.d1!==e.d2&&(t=m.JoinIdCol(t,m.CenterPoint4P(e.O4_2_y,new a.McGePoint3d(e.O4_2_y.x-4,e.O4_2_y.y,0),"O4'",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O4_2_z,new a.McGePoint3d(e.O4_2_z.x+1,e.O4_2_z.y,0),"O4'",n.TextHeight.Height_Ht))),n.EntityIds.DicLinIdCol.set("DimCenter",t)}catch(t){console.error("错误代码 1204","提示",t)}}DimRadius(i){i.Data;const n=i.Setting,e=i.Property,t=i.LinData,o=[],s=1;try{const d=e.ContourPoints.Cq.DicFirst.get("ptFirst_Y2"),c=new a.McGePoint3d(e.ContourPoints.Cq.DicFirst.get("ptFirst_Y3").x,e.ContourPoints.Cq.DicFirst.get("ptFirst_Y3").y,0),l=new a.McGePoint3d(e.ContourPoints.Cq.DicFirst.get("ptFirst_Y4").x,e.ContourPoints.Cq.DicFirst.get("ptFirst_Y4").y,0),_=new a.McGePoint3d(e.ContourPoints.Cq.DicFirst.get("ptFirst_Y5").x,e.ContourPoints.Cq.DicFirst.get("ptFirst_Y5").y,0),h=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z5"),P=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),u=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z3"),p=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),M=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y2"),g=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y3"),C=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y4"),y=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y5"),F=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z5"),I=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z4"),T=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z3"),R=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z2"),L=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y3"),f=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y4"),G=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y5"),O=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z5"),b=r.PolarPoint(t.O_Invert,275/180*Math.PI,t.RadiusFirst5),H=r.PolarPoint(t.O_Invert,275/180*Math.PI,t.RadiusFirst5-13),x=r.GetDipAngle(t.O2_y,_),j=r.GetDipAngle(h,t.O2_z),N=r.GetDipAngle(u,t.O4_1_z),k=r.GetDipAngle(R,t.O4_2_z),Y=r.GetDipAngle(t.O4_2_y,M),U=r.GetDipAngle(t.O4_1_y,C),Q=r.GetDipAngle(p,t.O_Invert),K=r.GetDipAngle(t.O3_y,l);o.push(r.AddLeader2P(c,t.O4_1_y)),o.push(r.AddLeader2P(g,t.O4_1_y)),o.push(r.AddLeader2P(_,t.O2_y)),o.push(r.AddLeader2P(y,t.O1)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(h,t.O2_z,.1),j+Math.PI/2,1),"r2="+(10*t.RadiusFirst2).toFixed(0),e.TextHeight.Height_Ht,0,.7,j)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(h,t.O2_z,.1),j+Math.PI/2,-4.5),"R2="+(10*t.RadiusSecond2).toFixed(0),e.TextHeight.Height_Ht,0,.7,j)),n.ChenQi.Cqdm.MarkCur?(o.push(r.addText6P(r.PolarPoint(r.PointOnline(_,t.O2_y,.45),x+Math.PI/2,1),"r1="+(10*t.RadiusFirst1).toFixed(0),e.TextHeight.Height_Ht,0,.7,x)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(_,t.O2_y,.45),x+Math.PI/2,-4.5),"R1="+(10*t.RadiusSecond1).toFixed(0),e.TextHeight.Height_Ht,0,.7,x))):(o.push(r.addText6P(r.PolarPoint(r.PointOnline(_,t.O2_y,.25),x+Math.PI/2,1),"r1",e.TextHeight.Height_Ht,0,.7,x)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(_,t.O2_y,.25),x+Math.PI/2,-4.5),"R1",e.TextHeight.Height_Ht,0,.7,x))),o.push(r.AddLeader2P(h,t.O2_z)),o.push(r.AddLeader2P(F,t.O1)),o.push(r.AddLeader2P(u,t.O4_1_z)),o.push(r.AddLeader2P(d,t.O_Invert)),o.push(r.AddLeader2P(M,t.O4_2_y)),o.push(r.AddLeader2P(p,t.O_Invert)),o.push(r.AddLeader2P(R,t.O4_2_z)),o.push(r.AddLeader2P(C,t.O3_y)),o.push(r.AddLeader2P(I,t.O3_z)),o.push(r.AddLeader2P(P,t.O3_z)),o.push(r.addLine(t.O4_1_z,t.O3_z,7,"DASHED",.3/s)),o.push(r.addLine(t.O4_1_y,t.O3_y,7,"DASHED",.3/s)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(u,t.O4_1_z,.1),N+Math.PI/2,1),"r4="+(10*t.RadiusFirst4).toFixed(0),e.TextHeight.Height_Ht,0,.7,N)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(M,t.O4_2_y,.85),Y+Math.PI/2,-4.5),"R4="+(10*t.RadiusSecond4).toFixed(0),e.TextHeight.Height_Ht,0,.7,Y)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(C,t.O3_y,.35),K+Math.PI/2,1),"r3="+(10*t.RadiusFirst3).toFixed(0),e.TextHeight.Height_Ht,0,.7,K)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(C,t.O3_y,.35),K+Math.PI/2,-4.5),"R3="+(10*t.RadiusSecond3).toFixed(0),e.TextHeight.Height_Ht,0,.7,K)),n.ChenQi.Cqdm.MarkCur?(o.push(r.addText6P(r.PolarPoint(r.PointOnline(p,t.O_Invert,.5),Q+Math.PI/2,1),"r5="+(10*t.RadiusFirst5).toFixed(0),e.TextHeight.Height_Ht,0,.7,Q)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(p,t.O_Invert,.5),Q+Math.PI/2,-4.5),"R5="+(10*t.RadiusSecond5).toFixed(0),e.TextHeight.Height_Ht,0,.7,Q))):(o.push(r.addText6P(r.PolarPoint(r.PointOnline(p,t.O_Invert,.5),Q+Math.PI/2,1),"r5",e.TextHeight.Height_Ht,0,.7,Q)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(p,t.O_Invert,.5),Q+Math.PI/2,-4.5),"R5",e.TextHeight.Height_Ht,0,.7,Q))),e.EntityIds.DicLinIdCol.set("DimRadius",o)}catch(d){console.error("错误代码 1204","提示",d)}}};class Ie{ZhcsTable(i){const n=i.Property.FrameCoords.Cq.ptTable_ZhcsTopMid;try{const e=this.PrepareCellTexts(i),t=new a.McDbXlsxTable;t.styleName="STANDARD";const o=[];for(let h=0;h<e.length;h++){const P=e[h];o.push(P)}const s=this.transposeTableData(o);t.setFromArray(s),m.AutoMergeRowTable(t);for(let h=0;h<t.colCount;h++)t.setColumnWidth(h,15);t.setColumnWidth(0,15),t.setColumnWidth(4,18),t.setColumnWidth(5,18),t.setColumnWidth(6,14.5),t.setColumnWidth(7,14.5),t.setColumnWidth(8,25);for(let h=0;h<t.rowCount;h++)t.setRowHeight(h,8);t.setRowHeight(0,10),t.styleName="STANDARD";for(let h=0;h<t.rowCount;h++)for(let P=0;P<t.colCount;P++)t.setCellAlignment(h,P,"center");const d=t.getBoundingBox().maxPt.x-t.getBoundingBox().minPt.x,c=n.x-d/2,l=n.y-5;t.position=new a.McGePoint3d(c,l,0),[].push(r.AppendEntity(t)),m.Heading1(new a.McGePoint3d(n.x,n.y,0),"初期支护参数表","")}catch(e){console.log("绘制 支护参数表 错误",e)}}FillZhcsTableString(i,n){const e=[];for(let t=0;t<n.length;t++){const o=n[t];e.push(o)}i.setFromArray(e)}SetTransposedColumnsAndRows(i){i.colWidth=15,i.setColumnWidth(4,18),i.setColumnWidth(5,18),i.setColumnWidth(6,14.5),i.setColumnWidth(7,14.5),i.setColumnWidth(8,25),i.rowHeight=8,i.setRowHeight(0,10)}PrepareCellTexts(i){const n=i.Data,e=i.LinData,t=n.Cq.Jzcl.Phntcl,o="!"+n.Cq.Zhcs.Fwi_wpzj+"钢筋网",s=(10*e.m1).toFixed(0),d=(10*e.m2).toFixed(0),c=10*e.Bw+"×"+10*e.Bw,l=(e.Dh_Arch_y/10).toFixed(1)+"×"+(e.Dz/10).toFixed(1)+"(环×纵)",_=(e.Lm_Arch_y/10).toFixed(1),h=(e.Lm_Wall_y/10).toFixed(1),P=(e.Ly/10).toFixed(1);at.GetPartDescription(n.Cq.Zhcs.Wpbw),at.GetPartDescription(n.Cq.Zhcs.Mgbw);let u,p;e.t2!==""&&e.t2!=="0"?(u=["预留变形量","设置部位","拱墙","仰拱","仰拱"],p=["预留变形量","厚度(cm)",e.t1,e.t2,e.t2]):(u=["预留变形量","设置部位","拱墙","拱墙","拱墙"],p=["预留变形量","厚度(cm)",e.t1,e.t1,e.t1]);let M,g;e.m2===e.m1?(M=[t,"设置部位","全环","全环","全环"],g=[t,"厚度(cm)",s,s,s]):e.m2===0?(M=[t,"设置部位","拱墙","拱墙","拱墙"],g=[t,"厚度(cm)",s,s,s]):(M=[t,"设置部位","拱墙","仰拱","仰拱"],g=[t,"厚度(cm)",s,d,d]);let C,y;return e.Lm_Arch_y!==e.Lm_Wall_y?e.Ly!==0?(C=["锚 杆","设置部位","拱部","边墙","仰拱"],y=["锚 杆","长度(m)",_,h,P]):(C=["锚 杆","设置部位","拱部","边墙",""],y=["锚 杆","长度(m)",_,h,""]):e.Ly!==0?(C=["锚 杆","设置部位","拱墙","仰拱",""],y=["锚 杆","长度(m)",_,P,""]):(C=["锚 杆","设置部位","拱墙","拱墙","拱墙"],y=["锚 杆","长度(m)",_,_,_]),[u,p,M,g,[o,"设置部位","拱墙","拱墙","拱墙"],[o,"网格间距",c,c,c],C,y,["锚 杆","间距(m)",l,l,l]]}DeleteUnnecessaryRows(i,n){const e=n.LinData,t=[0,1,2];(e.t2===""||e.t2==="0")&&(t.includes(3)||t.push(3)),(e.m2!==e.m1||e.m2!==0)&&(t.includes(3)||t.push(3)),e.Lm_Arch_y!==e.Lm_Wall_y?e.Ly===0?t.includes(3)||t.push(3):(t.includes(3)||t.push(3),t.includes(4)||t.push(4)):e.Ly!==0&&(t.includes(3)||t.push(3)),t.sort();for(let o=i.rowCount-1;o>=0;o--)t.includes(o)||(i.setSelectedCells([{row:o,col:0}]),i.deleteRow())}transposeTableData(i){if(i.length===0)return[];const n=i.length,e=i[0].length,t=[];for(let o=0;o<e;o++){t[o]=[];for(let s=0;s<n;s++)t[o][s]=i[s][o]}return t}Tb_Dmcc_Sx(i){const n=i.Property;i.LinData;try{const e=n.FrameCoords.Cq.ptTable_DmccTopMid,t=this.PrepareDmcc(i),o=new a.McDbXlsxTable;o.styleName="STANDARD";const s=[];s.push([`断面加宽
|
|
7
|
+
W`,"d","b[1]","b[2]","a","r1","R1","r4","R4","h[1]","h[2]","h[3]","h","H","B"]);for(let d=0;d<t.length;d++){const c=[];for(let l=0;l<t[d].length;l++)c.push((10*t[d][l]).toFixed(0));s.push(c)}o.setFromArray(s);for(let d=0;d<o.colCount;d++)o.setColumnWidth(d,12);for(let d=0;d<o.rowCount;d++)o.setRowHeight(d,6);o.position=e,r.AppendEntity(o),m.Heading1(new a.McGePoint3d(e.x+90,e.y+5,0),"断面尺寸表(cm)","")}catch(e){console.log("错误代码 1302",e)}}PrepareDmcc(i){const n=i.LinData,e=[];for(let t=0;t<n.SizeRow;t++){const o=n.Dms[t];e.push([t,o.lineSpace,o.b1,o.b2,o.a,o.RadiusFirst_Arch,o.RadiusSecond_Arch,o.RadiusFirst_Invert,o.RadiusSecond_Invert,o.H_ngToArchCenter,o.H_ngToFirstInvertBottom,o.H_ngToInvertCenter,o.h,o.H,o.B])}return e}Tb_Dmcc_Dx(i){const e=i.Property.FrameCoords.Cq.ptTable_DmccTopMid,t=i.LinData;try{const o=[];for(const c of t.DmCs){const l=[];l[0]=c.W,l[1]=c.RadiusFirst_Arch,l[2]=c.RadiusSecond_Arch,l[3]=c.RadiusFirst_Invert,l[4]=c.a,l[5]=c.H_ngToInvertCenter,l[6]=c.b1,l[7]=c.b2,l[8]=c.B,l[9]=c.h,l[10]=c.H,o.push(l)}const s=new a.McDbXlsxTable;s.styleName="STANDARD";const d=[];d.push([`断面加宽
|
|
8
|
+
W`,"r1","R1","r4","a","a[1]","b[1]","b[2]","B","h","H"]);for(let c=0;c<o.length;c++){const l=[];for(let _=0;_<o[c].length;_++)l.push((10*o[c][_]).toFixed(0));d.push(l)}s.setFromArray(d);for(let c=0;c<s.colCount;c++)s.setColumnWidth(c,12);for(let c=0;c<s.rowCount;c++)s.setRowHeight(c,6);s.position=e,r.AppendEntity(s),m.Heading1(new a.McGePoint3d(e.x+66,e.y+5,0),"断面尺寸表(cm)","")}catch(o){console.log("错误代码 CQ122",o)}}}class Qo{constructor(){this.加宽=0,this.断面开挖=0,this.预留变形及允许超挖引起的开挖="",this.喷混凝土体积=0,this.喷混凝土纤维重量=0,this.钢筋网重量=0,this.拱部锚杆根数=0,this.拱部锚杆长度=0,this.边墙锚杆根数=0,this.边墙锚杆长度=0,this.仰拱锚杆根数=0,this.仰拱锚杆长度=0,this.拱墙二衬混凝土方量=0,this.仰拱二衬混凝土方量=0,this.仰拱填充混凝土方量=0,this.找平层混凝土方量=0,this.HRB400钢筋重量=0,this.HRB400钢筋重量小于18mm=0,this.HRB400钢筋重量18_28mm=0,this.HPB300钢筋重量=0,this.HPB300钢筋重量小于10mm=0,this.HPB300钢筋重量大于10mm=0,this.钢筋接驳器个数=0,this.接茬钢筋重量=0,this.拱墙允许超挖回填="",this.仰拱允许超挖回填方量="",this.拱墙预留变形回填方量="",this.仰拱预留变形回填方量="",this.侧沟槽身混凝土方量=0,this.侧沟槽身钢筋重量=0,this.侧沟槽盖板混凝土方量=0,this.侧沟槽盖板钢筋重量=0,this.中心水沟身混凝土方量=0,this.中心水沟盖板混凝土方量=0,this.中心水沟槽盖板钢筋重量=0,this.中心管长=0,this.踏步混凝土方量=0,this.踏步PVC管长度=0,this.一般段_防水板=0,this.一般段_无防布=0,this.一般段_窄幅防排水板_衬砌中部替代环向盲管=0,this.一般段_衬砌中部环向盲管=0,this.一般段_环向施工缝_中埋式橡胶止水带_全环=0,this.一般段_施工缝_窄幅防排水板_拱墙=0,this.一般段_施工缝_遇水膨胀止水条_拱墙=0,this.一般段_施工缝_遇水膨胀止水条_仰拱=0,this.一般段_施工缝_遇水膨胀止水条_沟槽=0,this.一般段_中埋式钢板止水带_纵向=0,this.一般段_水泥基渗透结晶型防水涂料_纵向=0,this.一般段_水泥基渗透结晶型防水涂料_环向=0,this.一般段_水泥基渗透结晶型防水涂料_仰拱填充=0,this.一般段_水泥基渗透结晶型防水涂料_沟槽=0,this.一般段_纵向施工缝界面剂=0,this.一般段_变形缝_中埋式钢边橡胶止水带=0,this.一般段_变形缝_背贴式自粘橡胶止水带=0,this.一般段_变形缝_窄幅防排水板=0,this.一般段_变形缝_聚乙烯泡沫塑料板_全环=0,this.一般段_变形缝_聚乙烯泡沫塑料板_仰拱填充=0,this.一般段_变形缝_聚乙烯泡沫塑料板_沟槽=0,this.一般段_变形缝_聚硫密封胶_拱墙=0,this.一般段_变形缝_聚硫密封胶_仰拱=0,this.一般段_变形缝_聚硫密封胶_沟槽=0,this.一般段_变形缝_聚硫密封胶_中心水沟=0,this.一般段_防排水_纵向100盲管=0,this.一般段_防排水_外裹无纺布=0,this.一般段_防排水_100三通管=0,this.一般段_防排水_防结晶密封器=0,this.一般段_防排水_横向排水管=0,this.一般段_边墙泄水孔_清孔孔数=0,this.一般段_边墙泄水孔_110钻孔=0,this.一般段_边墙泄水孔_110PVC管=0,this.岩溶段_防排水板=0,this.岩溶段_环向施工缝_中埋式橡胶止水带_全环=0,this.岩溶段_环向施工缝_背贴橡胶止水带_全环=0,this.岩溶段_施工缝_遇水膨胀止水条_拱墙=0,this.岩溶段_施工缝_遇水膨胀止水条_全环=0,this.岩溶段_施工缝_遇水膨胀止水条_仰拱=0,this.岩溶段_施工缝_遇水膨胀止水条_沟槽=0,this.岩溶段_施工缝_中埋式钢板止水带_纵向=0,this.岩溶段_水泥基渗透结晶型防水涂料_环向=0,this.岩溶段_水泥基渗透结晶型防水涂料_纵向=0,this.岩溶段_水泥基渗透结晶型防水涂料_仰拱填充=0,this.岩溶段_水泥基渗透结晶型防水涂料_沟槽=0,this.岩溶段_变形缝_中埋式橡胶止水带_全环=0,this.岩溶段_变形缝_背贴式橡胶止水带_全环=0,this.岩溶段_变形缝_聚乙烯泡沫塑料板_全环=0,this.岩溶段_变形缝_聚乙烯泡沫塑料板_仰拱填充=0,this.岩溶段_变形缝_聚乙烯泡沫塑料板_沟槽=0,this.岩溶段_变形缝_聚硫密封胶_拱墙=0,this.岩溶段_变形缝_聚硫密封胶_仰拱=0,this.岩溶段_变形缝_聚硫密封胶_沟槽=0,this.岩溶段_变形缝_聚硫密封胶_中心水沟=0,this.岩溶段_变形缝_聚硫密封胶_仰拱填充=0,this.岩溶段_防排水_纵向100盲管=0,this.岩溶段_防排水_外裹无纺布=0,this.岩溶段_防排水_100三通管=0,this.岩溶段_防排水_防结晶密封器=0,this.岩溶段_防排水_横向排水管=0,this.岩溶段_边墙泄水孔_清孔孔数=0,this.岩溶段_边墙泄水孔_200钻孔=0,this.岩溶段_边墙泄水孔_200PVC管=0,this.衬砌拱顶注浆_M20微膨胀性水泥砂浆=0,this.M20微膨胀性水泥砂浆_30PVC管=0,this.衬砌拱顶注浆_30PVC花管=0,this.隧底盲管长度=0,this.隧底盲管弯管接头个数=0,this.隧底盲管彩条布面积=0,this.竖向泄压孔PVC管长度=0,this.竖向泄压孔PVC弯管个数=0,this.二衬外轮廓拱部长度=0,this.二衬外轮廓拱墙长度=0,this.二衬外轮廓全环长=0,this.开挖轮廓拱部长度=0,this.开挖轮廓拱墙长度=0,this.开挖轮廓全环长度=0}}class Ze{CalcGcsl_Sx(i){const n=new Map;return this.Gcsl_Sx0断面加宽(i,n),this.Gcsl_Sx1初支二衬(i,n),this.Gcsl_Sx2填充找平层(i,n),this.Gcsl_Sx3钢筋(i,n),this.Gcsl_Sx4回填(i,n),this.Gcsl_Sx5沟槽踏步(i,n),this.Gcsl_Sx6一般段防排水(i,n),this.Gcsl_Sx7岩溶段防排水(i,n),this.Gcsl_Sx8衬砌拱顶注浆(i,n),this.Gcsl_Sx9隧底排水(i,n),this.Gcsl_Sx10常用数据(i,n),n}Gcsl_Sx0断面加宽(i,n){const e=i.LinData;for(let t=0;t<e.Dms.length;t++){const o=new Qo,s=(10*t).toFixed(0);n.set(s,o)}}Gcsl_Sx1初支二衬(i,n){const e=i.Data,t=i.Setting,o=i.LinData,s=t.ChenQi.Cqdm.Cqjd;try{for(let d=0;d<o.Dms.length;d++){const c=o.Dms[d],l=o.hotDatas[d],_=(10*d).toFixed(0),h=n.get(_);h.加宽=10*d,h.断面开挖=l.Area_Fourth/100,h.喷混凝土体积=(l.Area_Fourth-l.Area_Second)/100,h.喷混凝土纤维重量=Math.round(h.喷混凝土体积*At(10,s))/At(10,s)*t.ChenQi.Cqsz.Cqzf.Phntqw;let P=0;switch(e.Cq.Zhcs.Wpbw){case W.Gq:P=o.hotDatas[d].Lenth_Forth_ArchWall;break;case W.Gb:P=o.hotDatas[d].Lenth_Forth_Arch;break;case W.Gbjb:P=o.hotDatas[d].Lenth_Forth_Arch*.5;break;case W.Qh:P=o.hotDatas[d].Lenth_Forth_ArchWall+o.hotDatas[d].Lenth_Forth_Invert;break;default:break}o.Bw===0?h.钢筋网重量=0:o.Bw===2.5?h.钢筋网重量=1.25*P*2/o.Bw*it.Bar(o.Fwi.toFixed(0)):o.Bw===2&&(h.钢筋网重量=1.2*P*2/o.Bw*it.Bar(o.Fwi.toFixed(0)));const u=Math.floor(o.hotDatas[d].Lenth_Forth_Arch/o.Dh_Arch_y)+.5,p=Math.floor(o.hotDatas[d].Lenth_Forth_ArchWall/o.Dh_Arch_y)-Math.floor(o.hotDatas[d].Lenth_Forth_Arch/o.Dh),M=Math.floor(o.hotDatas[d].Lenth_Forth_Invert/o.Dh_Arch_y)+.5;switch(e.Cq.Zhcs.Mgbw){case W.Qh:h.拱部锚杆根数=u*10/o.Dz,h.拱部锚杆长度=h.拱部锚杆根数*o.Lm_Arch_y/10,h.边墙锚杆根数=p*10/o.Dz,h.边墙锚杆长度=h.边墙锚杆根数*o.Lm_Wall_y/10,h.仰拱锚杆根数=M*10/o.Dz,h.仰拱锚杆长度=h.仰拱锚杆根数*o.Ly/10;break;case W.Gq:h.拱部锚杆根数=u*10/o.Dz,h.拱部锚杆长度=h.拱部锚杆根数*o.Lm_Arch_y/10,h.边墙锚杆根数=p*10/o.Dz,h.边墙锚杆长度=h.边墙锚杆根数*o.Lm_Wall_y/10,h.仰拱锚杆根数=0,h.仰拱锚杆长度=0;break;case W.Gb:h.拱部锚杆根数=u*10/o.Dz,h.拱部锚杆长度=h.拱部锚杆根数*o.Lm_Arch_y/10,h.边墙锚杆根数=0,h.边墙锚杆长度=0,h.仰拱锚杆根数=0,h.仰拱锚杆长度=0;break;case W.Gbjb:h.拱部锚杆根数=Math.ceil(u*10/2/o.Dz),h.拱部锚杆长度=h.拱部锚杆根数*o.Lm_Arch_y/10,h.边墙锚杆根数=0,h.边墙锚杆长度=0,h.仰拱锚杆根数=0,h.仰拱锚杆长度=0;break;default:h.拱部锚杆根数=0,h.拱部锚杆长度=0,h.边墙锚杆根数=0,h.边墙锚杆长度=0,h.仰拱锚杆根数=0,h.仰拱锚杆长度=0;break}h.拱墙二衬混凝土方量=o.hotDatas[d].Volume_拱墙二衬/100,h.仰拱二衬混凝土方量=o.hotDatas[d].Volume_仰拱二衬/100}}catch(d){console.log("错误代码 1401","提示")}}Gcsl_Sx2填充找平层(i,n){}Gcsl_Sx3钢筋(i,n){const e=i.Setting,t=i.SteelData,o=i.LinData;try{for(let s=0;s<o.SizeRow;s++){const d=(10*s).toFixed(0),c=n.get(d);t.steelQuantitys.length===0?(c.HRB400钢筋重量=0,c.HPB300钢筋重量=0,c.钢筋接驳器个数=0,c.HRB400钢筋重量小于18mm=0,c.HRB400钢筋重量18_28mm=0,c.HPB300钢筋重量大于10mm=0,c.HPB300钢筋重量小于10mm=0,c.接茬钢筋重量=0):(c.HRB400钢筋重量=t.steelQuantitys[s].HRB400,c.HPB300钢筋重量=t.steelQuantitys[s].HPB300,c.钢筋接驳器个数=t.steelQuantitys[s].rebarCoupler,c.HRB400钢筋重量小于18mm=t.steelQuantitys[s].HRB400NotLessThan18m,c.HRB400钢筋重量18_28mm=t.steelQuantitys[s].HRB400Between18And28mm,c.HPB300钢筋重量大于10mm=t.steelQuantitys[s].HPB300NotLessThan10mm,c.HPB300钢筋重量小于10mm=t.steelQuantitys[s].HPB300Under10mm,t.steelQuantitys[s].HRB400<1e-5&&(c.接茬钢筋重量=o.railStyle==="有砟"?e.ChenQi.Cqsz.Eccq.Yzjcgj:e.ChenQi.Cqsz.Eccq.Wzjcgj))}}catch(s){console.log("错误代码 1402","提示")}}Gcsl_Sx4回填(i,n){const e=i.Data,t=i.Setting,o=i.LinData,s="F"+t.ChenQi.Cqdm.Cqjd.toString();try{const d=jt.MidYlbx(o.t2)/10;let c=jt.MidYlbx(o.t1)/10;if(c===-.1&&(console.log("请核查 拱墙预留变形量 是否按标准格式输入!","提示"),c=e.Gj.Gjcs.Ylbx_Gq/10),d===-.1){console.log("请核查 仰拱预留变形量 是否按标准格式输入!","提示");return}const l=at.Wyjb(e.Cq.Cqtk.Xtm);let _=.1,h=.1,P=.1;l>1&&l<5&&(_=.15);const u=.15,p=.15,M=.2;for(let g=0;g<o.SizeRow;g++){const C=(10*g).toFixed(0),y=n.get(C),F=o.hotDatas[g].Lenth_Forth_Out10cm_Arch*_/10,I=(o.hotDatas[g].Lenth_Forth_Out10cm_ArchWall-o.hotDatas[g].Lenth_Forth_Out10cm_Arch)*h/10,T=o.hotDatas[g].Lenth_Forth_Out10cm_Invert*P/10,R=o.hotDatas[g].Lenth_Forth_Out10cm_Arch*u/10,L=(o.hotDatas[g].Lenth_Forth_Out10cm_ArchWall-o.hotDatas[g].Lenth_Forth_Out10cm_Arch)*p/10,f=o.hotDatas[g].Lenth_Forth_Out10cm_Invert*M/10;y.拱墙允许超挖回填=(F+I).toFixed(parseInt(s.substring(1)))+"/"+(R+L).toFixed(parseInt(s.substring(1))),y.仰拱允许超挖回填方量=T.toFixed(parseInt(s.substring(1)))+"/"+f.toFixed(parseInt(s.substring(1)));const G=o.hotDatas[g].Lenth_Third_ArchWall*c/100;y.预留变形及允许超挖引起的开挖=(G+(F+I)+T).toFixed(parseInt(s.substring(1)))+"/"+(G+(R+L)+f).toFixed(parseInt(s.substring(1))),y.拱墙预留变形回填方量=(o.hotDatas[g].Lenth_Third_ArchWall*c*t.ChenQi.Tssz.Proportiion/1e4).toFixed(parseInt(s.substring(1))),y.仰拱预留变形回填方量=(o.hotDatas[g].Lenth_Third_Invert*d*t.ChenQi.Tssz.Proportiion/1e4).toFixed(parseInt(s.substring(1)))}}catch(d){console.log("错误代码 1401","提示")}}Gcsl_Sx5沟槽踏步(i,n){const e=i.Setting,t=i.Property,o=i.LinData;try{for(let s=0;s<o.SizeRow;s++){const d=(10*s).toFixed(0),c=n.get(d);c.侧沟槽身混凝土方量=(t.AreaLength.AreaOfYcsg+t.AreaLength.AreadOfZcsg)/100,c.中心水沟身混凝土方量=t.AreaLength.AreaOfZxsg/100,o.railStyle==="有砟"?(c.侧沟槽身钢筋重量=e.ChenQi.Cqsz.Sgdlc.YzCggj,c.侧沟槽盖板混凝土方量=e.ChenQi.Cqsz.Sgdlc.YzCggbhnt,c.侧沟槽盖板钢筋重量=e.ChenQi.Cqsz.Sgdlc.YzCggbgj,c.中心水沟盖板混凝土方量=e.ChenQi.Cqsz.Sgdlc.YzZxggbhnt,c.中心水沟槽盖板钢筋重量=e.ChenQi.Cqsz.Sgdlc.YzZxggbgj):(c.侧沟槽身钢筋重量=e.ChenQi.Cqsz.Sgdlc.WzCggj,c.侧沟槽盖板混凝土方量=e.ChenQi.Cqsz.Sgdlc.WzCggbhnt,c.侧沟槽盖板钢筋重量=e.ChenQi.Cqsz.Sgdlc.WzCggbgj,c.中心水沟盖板混凝土方量=e.ChenQi.Cqsz.Sgdlc.WzZxggbhnt,c.中心水沟槽盖板钢筋重量=e.ChenQi.Cqsz.Sgdlc.WzZxggbgj),c.中心管长=1,o.railStyle==="无砟"?(c.踏步混凝土方量=e.ChenQi.Cqsz.Tb.Wzhnt,c.踏步PVC管长度=e.ChenQi.Cqsz.Tb.WzPVC):(c.踏步混凝土方量=0,c.踏步PVC管长度=0)}}catch(s){console.log("错误代码 1404","提示",s)}}Gcsl_Sx6一般段防排水(i,n){const e=i.Setting,t=i.LinData;try{const o=e.ChenQi.Cqsz.Fps.Hxsgfjj,s=1,d=1,c=4;for(let l=0;l<t.SizeRow;l++){const _=(10*l).toFixed(0),h=n.get(_),P=t.hotDatas[l];h.一般段_防水板=(P.Lenth_Second_ArchWall_Psg+Math.PI*s)*d/10,h.一般段_无防布=h.一般段_防水板,h.一般段_衬砌中部环向盲管=P.Lenth_Second_ArchWall_Psg/10/o,h.一般段_窄幅防排水板_衬砌中部替代环向盲管=e.ChenQi.Cqsz.Fps.With_zfFpsb_MidCq*h.一般段_衬砌中部环向盲管,h.一般段_环向施工缝_中埋式橡胶止水带_全环=(P.Lenth_First_Around+P.Lenth_Second_Around)/2/10/o,h.一般段_施工缝_窄幅防排水板_拱墙=e.ChenQi.Cqsz.Fps.With_zfFpsb_Sgf*P.Lenth_Second_ArchWall_Psg/10/o,h.一般段_施工缝_遇水膨胀止水条_仰拱=P.Lenth_Offset10cm_Invert/10/o,h.一般段_施工缝_遇水膨胀止水条_沟槽=2*.7/10,h.一般段_中埋式钢板止水带_纵向=2,h.一般段_水泥基渗透结晶型防水涂料_环向=(P.Area_Second-P.Area_First)/100/o,h.一般段_水泥基渗透结晶型防水涂料_纵向=P.两侧施工缝厚度/10,h.一般段_水泥基渗透结晶型防水涂料_仰拱填充=h.仰拱填充混凝土方量/o,h.一般段_水泥基渗透结晶型防水涂料_沟槽=h.侧沟槽身混凝土方量/o,h.一般段_变形缝_中埋式钢边橡胶止水带=(P.Lenth_First_Around+P.Lenth_Second_Around)/2/10,h.一般段_变形缝_背贴式自粘橡胶止水带=P.Lenth_Second_Around/10,h.一般段_变形缝_窄幅防排水板=e.ChenQi.Cqsz.Fps.With_zfFpsb_Sgf*P.Lenth_Second_ArchWall_Psg/10,h.一般段_变形缝_聚乙烯泡沫塑料板_全环=(P.Area_Second-P.Area_First)/100,h.一般段_变形缝_聚乙烯泡沫塑料板_仰拱填充=h.仰拱填充混凝土方量,h.一般段_变形缝_聚乙烯泡沫塑料板_沟槽=h.侧沟槽身混凝土方量,h.一般段_变形缝_聚硫密封胶_拱墙=P.Lenth_Second_ArchWall_Cq/10,h.一般段_变形缝_聚硫密封胶_仰拱=P.Lenth_Second_Invert_Cq/10,h.一般段_变形缝_聚硫密封胶_中心水沟=P.中心水沟内侧环长/10,h.一般段_变形缝_聚硫密封胶_沟槽=P.单侧侧沟内侧环长*2/10,h.一般段_防排水_纵向100盲管=2+P.纵向盲管垂直弯入侧沟长度/10*4/o,h.一般段_防排水_外裹无纺布=h.一般段_防排水_纵向100盲管*Math.PI*s/100,h.一般段_防排水_100三通管=4/o,h.一般段_防排水_防结晶密封器=4/o,h.一般段_防排水_横向排水管=(t.b1_y_0+t.b1_z_0+l-t.Zxsg.zxA内侧宽)/10/30;//!100PVC横向排水管,间距固定为30米(参考图中要求)
|
|
9
|
+
h.一般段_边墙泄水孔_清孔孔数=2/c,h.一般段_边墙泄水孔_110钻孔=2*(t.m1/10+.5)*2/c,h.一般段_边墙泄水孔_110PVC管=2*(P.纵向盲管垂直弯入侧沟长度/10)*2/c}}catch(o){console.log("错误代码 1404","提示")}}Gcsl_Sx7岩溶段防排水(i,n){const e=i.Setting,t=i.LinData;try{const o=e.ChenQi.Cqsz.Fps.Hxsgfjj,s=1,d=1,c=2;for(let l=0;l<t.SizeRow;l++){const _=(10*l).toFixed(0),h=n.get(_),P=t.hotDatas[l],u=P.Lenth_Second_Around/10/o,p=(P.Lenth_Second_Around+P.Lenth_First_Around)/20/o;h.岩溶段_防排水板=(P.Lenth_Second_ArchWall_Psg+Math.PI*s)*d/10,h.岩溶段_环向施工缝_中埋式橡胶止水带_全环=(P.Lenth_First_Around+P.Lenth_Second_Around)/2/10/o,h.岩溶段_施工缝_遇水膨胀止水条_全环=(P.Lenth_Offset10cm_ArchWall+P.Lenth_Offset10cm_Invert)/10/o,h.岩溶段_施工缝_遇水膨胀止水条_沟槽=.7*2/10,h.岩溶段_施工缝_中埋式钢板止水带_纵向=2,h.岩溶段_水泥基渗透结晶型防水涂料_环向=(P.Area_Second-P.Area_First)/100/o,h.岩溶段_水泥基渗透结晶型防水涂料_纵向=P.两侧施工缝厚度/10,h.岩溶段_水泥基渗透结晶型防水涂料_仰拱填充=h.仰拱填充混凝土方量/o,h.岩溶段_水泥基渗透结晶型防水涂料_沟槽=h.侧沟槽身混凝土方量/o,h.岩溶段_变形缝_中埋式橡胶止水带_全环=(P.Lenth_First_Around+P.Lenth_Second_Around)/2/10,h.岩溶段_变形缝_背贴式橡胶止水带_全环=P.Lenth_Second_Around/10,h.岩溶段_变形缝_聚乙烯泡沫塑料板_全环=(P.Area_Second-P.Area_First)/100,h.岩溶段_变形缝_聚乙烯泡沫塑料板_仰拱填充=h.仰拱填充混凝土方量,h.岩溶段_变形缝_聚乙烯泡沫塑料板_沟槽=h.侧沟槽身混凝土方量,h.岩溶段_变形缝_聚硫密封胶_拱墙=P.Lenth_Second_ArchWall_Cq/10,h.岩溶段_变形缝_聚硫密封胶_仰拱=P.Lenth_Second_Invert_Cq/10,h.岩溶段_变形缝_聚硫密封胶_沟槽=1.9*2,h.岩溶段_变形缝_聚硫密封胶_中心水沟=2.2,h.岩溶段_变形缝_聚硫密封胶_仰拱填充=(P.Lenth_First_Around-P.Lenth_First_ArchWall-18.8*2)/10,h.岩溶段_防排水_纵向100盲管=2+P.纵向盲管垂直弯入侧沟长度/10*4/o,h.岩溶段_防排水_外裹无纺布=h.岩溶段_防排水_纵向100盲管*Math.PI*s/100,h.岩溶段_防排水_100三通管=4/o,h.岩溶段_防排水_防结晶密封器=4/o,h.岩溶段_防排水_横向排水管=(t.b1_y_0+t.b1_z_0+l-t.Zxsg.zxA内侧宽)/10/10;//!100PVC横向排水管,间距固定为10米
|
|
10
|
+
h.岩溶段_边墙泄水孔_清孔孔数=2/c,h.岩溶段_边墙泄水孔_200钻孔=2*(t.m1/10+.5)*2/c,h.岩溶段_边墙泄水孔_200PVC管=2*(P.纵向盲管垂直弯入侧沟长度/10)*2/c,h.衬砌拱顶注浆_M20微膨胀性水泥砂浆=.25,h.M20微膨胀性水泥砂浆_30PVC管=1,h.衬砌拱顶注浆_30PVC花管=1.04}}catch(o){console.log("错误代码 1404","提示")}}Gcsl_Sx8衬砌拱顶注浆(i,n){const e=i.LinData;try{for(let t=0;t<e.SizeRow;t++){const o=(10*t).toFixed(0),s=n.get(o),d=e.hotDatas[t];s.衬砌拱顶注浆_M20微膨胀性水泥砂浆=.25,s.M20微膨胀性水泥砂浆_30PVC管=1,s.衬砌拱顶注浆_30PVC花管=1.04}}catch(t){console.log("错误代码 1408","提示")}}Gcsl_Sx9隧底排水(i,n){const e=i.LinData;try{for(let o=0;o<e.SizeRow;o++){const s=(10*o).toFixed(0),d=n.get(s),c=e.hotDatas[o];d.竖向泄压孔PVC管长度=c.隧底竖向泄压孔每环长度/10/2,d.竖向泄压孔PVC弯管个数=2/2,d.隧底盲管长度=c.隧底盲管每环长度/10/2,d.隧底盲管弯管接头个数=4/2,d.隧底盲管彩条布面积=c.隧底彩条布长度*.5/10/2}}catch(t){console.log("错误代码 1408","提示")}}Gcsl_Sx10常用数据(i,n){const e=i.LinData;try{for(let t=0;t<e.SizeRow;t++){const o=(10*t).toFixed(0),s=n.get(o),d=e.hotDatas[t];s.二衬外轮廓拱部长度=d.Lenth_Second_Arch/10,s.二衬外轮廓拱墙长度=d.Lenth_Second_ArchWall_Fsb/10,s.二衬外轮廓全环长=d.Lenth_Second_Around/10,s.开挖轮廓拱部长度=d.Lenth_Forth_Arch/10,s.开挖轮廓拱墙长度=d.Lenth_Forth_ArchWall/10,s.开挖轮廓全环长度=(d.Lenth_Forth_Invert+d.Lenth_Forth_ArchWall)/10}}catch(t){console.log("错误代码 1409","提示")}}}let Ko=class extends Ze{Gcsl_Sx2填充找平层(i,n){const e=i.Setting,t=i.Property,o=i.LinData;try{const d=t.EntityIds.DicLinIdCol.get("FirstId")[0],c=t.ContourPoints.Cq.DicFirst.get("ptFirst_Y2"),l=t.ContourPoints.Cq.DicFirst.get("ptFirst_Y3"),_=t.ContourPoints.Cq.DicFirst.get("ptFirst_Y4"),h=t.ContourPoints.Cq.DicFirst.get("ptFirst_Y5"),P=t.ContourPoints.Cq.DicFirst.get("ptFirst_Z5"),u=t.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),p=t.ContourPoints.Cq.DicFirst.get("ptFirst_Z3"),M=t.ContourPoints.Cq.DicFirst.get("ptFirst_Z2");for(let g=0;g<o.SizeRow;g++){const C=[],y=(g-o.w)/2,F=new a.McGePoint3d(c.x+y,c.y,Math.tan(o.Radian_NearSgArc内/4)),I=new a.McGePoint3d(l.x+y,l.y,Math.tan(o.Radian_Widest_inAll/4)),T=new a.McGePoint3d(_.x+y,_.y,Math.tan(o.Radian2/4)),R=new a.McGePoint3d(h.x+y,h.y,Math.tan(o.Radian_Arch1/2)),L=new a.McGePoint3d(-h.x-y,h.y,Math.tan(o.Radian2/4)),f=new a.McGePoint3d(-_.x-y,_.y,Math.tan(o.Radian_Widest_inAll/4)),G=new a.McGePoint3d(-l.x-y,l.y,Math.tan(o.Radian_NearSgArc内/4)),O=new a.McGePoint3d(-c.x-y,c.y,Math.tan(o.Radian_Invert内/4));C.push(F),C.push(I),C.push(T),C.push(R),C.push(L),C.push(f),C.push(G),C.push(O);const b=r.addPline5P(C,0,1,!0,!0),H=b.getMcDbEntity(),x=[];if(o.railStyle==="有砟"){const z=A.IntsOfLineToCurve(new a.McGePoint3d(0,-o.dblHeight1,0),new a.McGePoint3d(1,-o.dblHeight1,0),b,"MinX"),$=new a.McGePoint3d(-o.b1_z_0-g/2,-o.dblHeight1,0),nt=new a.McGePoint3d(-o.Zxsg.zxD盖板宽/2+o.RailCenterOffset,-o.dblHeight2,0),ct=new a.McGePoint3d(o.Zxsg.zxD盖板宽/2+o.RailCenterOffset,-o.dblHeight2,0),st=new a.McGePoint3d(o.b1_y_0+g/2,-o.dblHeight1,0),et=new a.McGePoint3d(-z.x,z.y,0);e.ChenQi.Cqdm.Spxj?(x.push(z),x.push($),x.push(nt),x.push(ct),x.push(st),x.push(et)):(x.push($),x.push(nt),x.push(ct),x.push(st))}else{const z=A.IntsOfLineToCurve(new a.McGePoint3d(0,-o.H_ngToLjm,0),new a.McGePoint3d(1,-o.H_ngToLjm,0),d,"MinX"),$=new a.McGePoint3d(-o.b1_z_0-g/2,-o.H_ngToLjm,0),nt=new a.McGePoint3d(-o.b1_z_0-g/2+.8,-o.H_ngToLjm-(o.b1_y_0+o.b1_z_0+g-o.d-g-28)/2*.02,0),ct=new a.McGePoint3d(-o.b1_z_0-g/2+(o.b1_y_0+o.b1_z_0+g-o.d-g-28)/2+o.RailCenterOffset,-o.H_ngToLjm,0),st=new a.McGePoint3d(-(o.d+g-28)/2+o.RailCenterOffset,-o.H_ngToLjm,0),et=new a.McGePoint3d(-(o.Zxsg.zxA内侧宽/2+o.Zxsg.zxB侧壁厚)+o.RailCenterOffset,-o.H_ngToLjm-(o.d+g-28-o.Zxsg.zxA内侧宽-2*o.Zxsg.zxB侧壁厚)/2*.02,0),pt=new a.McGePoint3d(-et.x,et.y,0),ht=new a.McGePoint3d(-st.x,st.y,0),Mt=new a.McGePoint3d(-ct.x,ct.y,0),wt=new a.McGePoint3d(-nt.x,nt.y,0),Dt=new a.McGePoint3d(-$.x,$.y,0),Gt=new a.McGePoint3d(-z.x,z.y,0);e.ChenQi.Cqdm.Spxj?(x.push(z),x.push($),x.push(nt),x.push(ct),x.push(st),x.push(et),x.push(pt),x.push(ht),x.push(Mt),x.push(wt),x.push(Dt),x.push(Gt)):(x.push($),x.push(nt),x.push(ct),x.push(st),x.push(et),x.push(pt),x.push(ht),x.push(Mt),x.push(wt),x.push(Dt))}let j,N;e.ChenQi.Cqdm.Spxj?(j=A.IntsOfLineToCurve(new a.McGePoint3d(0,-o.dblHeight1,0),new a.McGePoint3d(1,-o.dblHeight1,0),b,"MinX"),N=A.IntsOfLineToCurve(new a.McGePoint3d(0,-o.dblHeight1,0),new a.McGePoint3d(1,-o.dblHeight1,0),b,"MaxX")):(j=A.IntsOfLineToCurve(new a.McGePoint3d(-o.b1_z_0-g/2,0,0),new a.McGePoint3d(-o.b1_z_0-g/2,1,0),b,"MinY"),N=A.IntsOfLineToCurve(new a.McGePoint3d(o.b1_y_0+g/2,0,0),new a.McGePoint3d(o.b1_y_0+g/2,1,0),b,"MinY"));const k=[];H.getDistAtPoint(H.getClosestPointTo(j,!1).val).val<H.getDistAtPoint(H.getClosestPointTo(N,!1).val).val?(k.push(H.getClosestPointTo(j,!1).val),k.push(H.getClosestPointTo(N,!1).val)):(k.push(H.getClosestPointTo(N,!1).val),k.push(H.getClosestPointTo(j,!1).val));const Y=H.splitCurves(k).aryVal,U=A.IntsOfLineToCurve(new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,-1,0),b,"MinY");let Q=new a.McObjectId;for(const z of Y){const $=z.getClosestPointTo(U,!1).val;U.distanceTo($)<.001&&(Q=r.AppendEntity(z))}const K=Q.getMcDbEntity(),B=[];if(K)for(let z=0;z<K.numVerts();z++)z===K.numVerts()-1?B.push(new a.McGePoint3d(K.getPointAt(z).val.x,K.getPointAt(z).val.y,0)):B.push(new a.McGePoint3d(K.getPointAt(z).val.x,K.getPointAt(z).val.y,K.getBulgeAt(z)));for(let z=x.length-1;z>=0;z--)B.push(x[z]);K&&B.push(K.getPointAt(0).val),v.Erase(b),v.Erase(Q);const Z=(A.AreaOfPolyline(B,!0,!1)-t.AreaLength.AreaOfZxsg外包框)/100,V=(10*g).toFixed(0),q=n.get(V);q.仰拱填充混凝土方量=Z,q.找平层混凝土方量=0}}catch(s){console.log("错误代码 1403","提示",s)}}};class tt{static FillTableString(i,n){i.setFromArray(n)}static mergeTable(i){for(let n=0;n<i.rowCount;n++){const e=[{row:n,col:i.colCount-9,rowspan:1,colspan:9}];i.setMergeCells(e),n>0&&i.setCellAlignment(n,i.colCount-9,"left")}}static SetTableColumnNumbers(i,n){for(let e=0;e<i.colCount;e++)e===0?n[0][e]="":n[0][e]=e.toString();return n}static SetTableCellsStyle(i,n,e){e.Property;for(let t=0;t<i.rowCount;t++)for(let o=0;o<i.colCount;o++)i.styleName="STANDARD",i.setCellAlignment(t,o,"center")}static MergeSteelQuantityTableCells(i){const e=i.colCount,t=[],o=[];for(let d=0;d<4;d++)for(let c=0;c<e;c++)o[d][c]=!1;const s=[];for(let d=0;d<4-2;d++)if(!t.includes(d)){for(let c=0;c<e;c++)if(!o[d][c]){const l=i.getCellTextValue(d,c),_=[];_.push([d,c]),o[d][c]=!0;const h=[];for(h.push([d,c]);_.length>0;){const P=_[0],u=P[0],p=P[1];_.unshift(),p+1<e&&!o[u][p+1]&&i.getCellTextValue(u,p+1)==l&&(o[u][p+1]=!0,_.push([u,p+1]),h.push([u,p+1])),u+1<4&&!o[u+1][p]&&i.getCellTextValue(u+1,p)==l&&(o[u+1][p]=!0,_.push([u+1,p]),h.push([u+1,p]))}if(h.length>1){const P=Math.min(...h.map(C=>C[0])),u=Math.min(...h.map(C=>C[1])),p=Math.max(...h.map(C=>C[0])),M=Math.max(...h.map(C=>C[1])),g=new xn;g.StartRow=P,g.StartCol=u,g.EndRow=p,g.EndCol=M,g.Cells=h,s.push(g)}}}for(let d=0;d<s.length;d++){const c=s[d],l=[{row:c.StartRow,col:c.StartCol,rowspan:c.EndRow-c.StartRow+1,colspan:c.EndCol-c.StartCol+1}];i.setMergeCells(l)}}static MergeLinQuantityTableCells(i){const e=i.colCount,t=[],o=[];for(let d=0;d<6;d++)for(let c=0;c<e;c++)o[d][c]=!1;const s=[];for(let d=0;d<6-2;d++)if(!t.includes(d)){for(let c=0;c<e;c++)if(!o[d][c]){const l=i.getCellTextValue(d,c),_=[];_.push([d,c]),o[d][c]=!0;const h=[];for(h.push([d,c]);_.length>0;){const P=_.shift(),u=P[0],p=P[1];p+1<e&&!o[u][p+1]&&i.getCellTextValue(u,p+1)==l&&(o[u][p+1]=!0,_.push([u,p+1]),h.push([u,p+1])),u+1<6&&!o[u+1][p]&&i.getCellTextValue(u+1,p)==l&&(o[u+1][p]=!0,_.push([u+1,p]),h.push([u+1,p]))}if(h.length>1){const P=Math.min(...h.map(C=>C[0])),u=Math.min(...h.map(C=>C[1])),p=Math.max(...h.map(C=>C[0])),M=Math.max(...h.map(C=>C[1])),g=new xn;g.StartRow=P,g.StartCol=u,g.EndRow=p,g.EndCol=M,g.Cells=h,s.push(g)}}}for(let d=1;d<s.length;d++){const c=s[d],l=[{row:c.StartRow,col:c.StartCol,rowspan:c.EndRow-c.StartRow+1,colspan:c.EndCol-c.StartCol+1}];i.setMergeCells(l)}i.setMergeCells([{row:0,col:0,rowspan:5,colspan:1}]),i.setMergeCells([{row:6,col:0,rowspan:i.rowCount-6,colspan:1}])}static GetSteelSizeRowData(i,n,e){const t=[n];for(const o of i)t.push(e(o));return t}static GetSteelQuantityRowData(i,n,e,t,o){const s=[n,e,t];for(const d of i)s.push(o(d));return s}static MergeQuantityTableCells(i,n,e,t){if(n==null)return;t==null&&(t=[]);const o=i.rowCount,s=i.colCount,d=Array(o).fill(null).map(()=>Array(s).fill(!1)),c=[];for(const _ of n){const h=_.StartRowIndex,P=_.EndRowIndex,u=_.StartColIndex,p=_.EndColIndex;for(let M=h;M<=P;M++)for(let g=u;g<=p;g++)d[M][g]=!1;for(let M=h;M<=P;M++)for(let g=u;g<=p;g++)if(!d[M][g]){const C=i.getCellTextValue(M,g),y=[];y.push([M,g]),d[M][g]=!0;const F=[];for(F.push([M,g]);y.length>0;){const R=y.shift(),L=R[0],f=R[1];f+1<=p&&!d[L][f+1]&&i.getCellTextValue(L,f+1)===C&&(d[L][f+1]=!0,y.push([L,f+1]),F.push([L,f+1])),L+1<=P&&!d[L+1][f]&&i.getCellTextValue(L+1,f)===C&&(d[L+1][f]=!0,y.push([L+1,f]),F.push([L+1,f]))}const I=F.filter(R=>t.includes(R[0])),T=this.groupBy(F,R=>R[1]);if(I.length>0&&F.length>1&&T.length>1)for(let R=0;R<t.length;R++){const L=Math.min(...F.map(b=>b[0])),f=Math.min(...F.map(b=>b[1])),G=Math.max(...F.map(b=>b[0])),O=Math.max(...F.map(b=>b[1]));for(let b=f;b<=O;b++){const H=[];for(let x=L;x<=G;x++)H.push([x,b]);this.addRegion(c,H)}}else this.addRegion(c,F)}}let l=[];for(const _ of c)l.push({row:_.StartRowIndex,col:_.StartColIndex,rowspan:_.EndRowIndex-_.StartRowIndex+1,colspan:_.EndColIndex-_.StartColIndex+1});if(e!=null)for(const _ of e)l.push({row:_.StartRowIndex,col:_.StartColIndex,rowspan:_.EndRowIndex-_.StartRowIndex+1,colspan:_.EndColIndex-_.StartColIndex+1});i.setMergeCells(l)}static MergeLinQuantityTableCellsWithRegions(i,n,e){if(n==null&&e==null)return;const t=i.rowCount,o=i.colCount,s=Array(t).fill(null).map(()=>Array(o).fill(!1)),d=[];for(const c of n){const l=c.StartRowIndex,_=c.EndRowIndex,h=c.StartColIndex,P=c.EndColIndex;for(let u=l;u<=_;u++)for(let p=h;p<=P;p++)s[u][p]=!1;for(let u=l;u<=_;u++)for(let p=h;p<=P;p++)if(!s[u][p]){const M=i.getCellTextValue(u,p),g=[];g.push([u,p]),s[u][p]=!0;const C=[];for(C.push([u,p]);g.length>0;){const y=g.shift(),F=y[0],I=y[1];I+1<=P&&!s[F][I+1]&&i.getCellTextValue(F,I+1)===M&&(s[F][I+1]=!0,g.push([F,I+1]),C.push([F,I+1])),F+1<=_&&!s[F+1][I]&&i.getCellTextValue(F+1,I)===M&&(s[F+1][I]=!0,g.push([F+1,I]),C.push([F+1,I]))}if(C.length>1){const y=Math.min(...C.map(R=>R[0])),F=Math.min(...C.map(R=>R[1])),I=Math.max(...C.map(R=>R[0])),T=Math.max(...C.map(R=>R[1]));d.push({StartRowIndex:y,StartColIndex:F,EndRowIndex:I,EndColIndex:T,Cells:C})}}}for(const c of d)i.setMergeCells([{row:c.StartRowIndex,col:c.StartColIndex,rowspan:c.EndRowIndex-c.StartRowIndex+1,colspan:c.EndColIndex-c.StartColIndex+1}]);if(e!=null)for(const c of e)i.setMergeCells([{row:c.StartRowIndex,col:c.StartColIndex,rowspan:c.EndRowIndex-c.StartRowIndex+1,colspan:c.EndColIndex-c.StartColIndex+1}])}static addRegion(i,n){if(n.length>1){const e=Math.min(...n.map(d=>d[0])),t=Math.min(...n.map(d=>d[1])),o=Math.max(...n.map(d=>d[0])),s=Math.max(...n.map(d=>d[1]));i.push({StartRowIndex:e,StartColIndex:t,EndRowIndex:o,EndColIndex:s,Cells:n})}}static groupBy(i,n){const e=new Map;for(const t of i){const o=n(t);e.has(o)||e.set(o,[]),e.get(o).push(t)}return Array.from(e.values())}}class xn{}class ae{Tb_GeneralQuantity暂不删除(i,n,e){const t=i.Property,o=[];try{const s=ae.PrepareCellTexts(i,e),d=new a.McDbXlsxTable;d.styleName="STANDARD",tt.SetTableCellsStyle(d,void 0,i),tt.FillTableString(d,s),this.DeleteUnnecessaryColumns(d,i),tt.SetTableColumnNumbers(d,s),d.setFromArray(s),d.position=new a.McGePoint3d(n.x-d.colWidth/2,n.y,0);const c=m.TableTransposition(d,t.TextHeight.Height_Tb,new a.McObjectId),l=c.getTableData().data;this.SetTransposedColumnsAndRows(c),this.SetTableHeaderCellsText(l,"数量"),c.position=n,o.push(r.AppendEntity(c)),m.JoinIdCol(o,m.Heading1(new a.McGePoint3d(n.x+c.colWidth/2,n.y+5,0),"工程数量表(每延米)","")),m.JoinIdCol(o,m.Heading1(new a.McGePoint3d(n.x+c.colWidth/2+450,n.y+5,0),"工程数量表(每延米)",""))}catch(s){console.error("绘制 工程数量表 错误 base ","提示",s)}}static transposeArray(i){if(i.length===0)return[];const n=i.length,e=i[0].length,t=Array(e).fill(0).map(()=>Array(n));for(let o=0;o<n;o++)for(let s=0;s<e;s++)t[s][o]=i[o][s];return t}static PrepareCellTexts(i,n){throw new Error("Method not implemented.")}Tb_GeneralQuantity(i,n,e){const t=i.Property;i.LinData;const o=t.FrameCoords.Cq.ptTable_QuantiyTopMid;let s=0;try{const d=[],c=this.PrepareCellTexts(i,n);t.Quantitys.LinCellTexts=c;const l=ae.transposeArray(c),_=new a.McDbXlsxTable;_.styleName="STANDARD";const h=[],P=l.length,u=l[0].length;h.push("*".repeat(u).split("").map(R=>""));for(let R=0;R<P;R++){const L=l[R];h.push(["",...L||"*".repeat(u).split("").map(f=>"")])}this.DeleteUnnecessaryColumns(_,i),_.setFromArray(h),tt.SetTableColumnNumbers(_,h),_.setFromArray(h);const p=[{StartRowIndex:1,StartColIndex:0,EndRowIndex:4,EndColIndex:_.colCount-1,Cells:[]}],M=[];M.push({StartRowIndex:0,StartColIndex:0,EndRowIndex:4,EndColIndex:0,Cells:[]}),M.push({StartRowIndex:6,StartColIndex:0,EndRowIndex:_.rowCount-1,EndColIndex:0,Cells:[]});const g=[4];tt.MergeQuantityTableCells(_,p,M,g);const C=m.TableTransposition(_,t.TextHeight.Height_Tb);C.styleName="STANDARD";const y=C.getTableData().data;switch(this.SetTransposedColumnsAndRows(C),this.SetTableHeaderCellsText(y,"数量"),C.setFromArray(y),e){case ot.Sx160to350:case ot.DL5Center:case ot.SL4Center:case ot.SL140:s=450-C.colWidth;break;case ot.SL160:case ot.SL200:s=5;break}let F=0;for(let R=0;R<C.colCount;R++)F+=C.getColumnWidth(R);const I=t.FrameCoords.Cq.ptBase2.x+225-F/2,T=t.FrameCoords.Cq.ptBase2.y-35;C.position=new a.McGePoint3d(I,T,0),console.log("Tb_GeneralQuantity: 添加表格到对象ID集合"),d.push(r.AppendEntity(C)),m.JoinIdCol(d,m.Heading1(new a.McGePoint3d(o.x,o.y+5,0),"工程数量表(每延米)",""))}catch(d){console.log("绘制 工程数量表 错误",d)}}SetTransposedColumnsAndRows(i){for(let n=0;n<i.colCount;n++)switch(n){case 0:case 1:i.setColumnWidth(n,15);break;case 2:case 4:i.setColumnWidth(n,25);break;case 3:i.setColumnWidth(n,45);break;case 5:i.setColumnWidth(n,15);break;default:i.setColumnWidth(n,20);break}for(let n=0;n<i.rowCount;n++)n===0?i.setRowHeight(n,10):i.setRowHeight(n,8)}SetTableHeaderCellsText(i,n){return i[0][0]="项 目",i[0][5]="单位",i[0][6]=n,i}PrepareCellTexts(i,n){const e=i.Data,t=i.Setting,o=i.LinData,s=e.Cq.Jzcl.Phntcl,d=e.Cq.Jzcl.Hntcl,c="HPB300 !"+e.Cq.Zhcs.Fwi_wpzj;t.ChenQi.Cqsz.Sgdlc.Cgcshntcl,t.ChenQi.Cqsz.Sgdlc.Cggbhntcl,t.ChenQi.Cqsz.Sgdlc.Zxsghntcl,t.ChenQi.Cqsz.Sgdlc.Zxsggbhntcl;const l="拱部 L="+(o.Lm_Arch_y/10).toFixed(1),_="边墙 L="+(o.Lm_Wall_y/10).toFixed(1),h="仰拱 L="+(o.Ly/10).toFixed(1);""+t.ChenQi.Cqsz.Fps.With_zfFpsb_Sgf.toFixed(1),""+t.ChenQi.Cqsz.Fps.With_zfFpsb_MidCq.toFixed(1);const P=t.ChenQi.Cqdm.Cqjd;t.ChenQi.Cqdm.Cqjd;let u=t.ChenQi.Cqdm.Cqjd;return[this.GetRowData(n,"断面加宽W","断面加宽W","断面加宽W","断面加宽W","cm",M=>M.加宽.toFixed(0)),this.GetRowData(n,"开挖","开挖","开挖","开挖","m(3)",M=>M.断面开挖.toFixed(P)),this.GetRowData(n,"初期支护","喷混凝土",s,s,"m(3)",M=>M.喷混凝土体积.toFixed(P)),this.GetRowData(n,"初期支护","喷混凝土纤维","喷混凝土纤维","喷混凝土纤维","kg",M=>M.喷混凝土纤维重量.toFixed(P)),this.GetRowData(n,"初期支护","钢筋网","钢筋网",c,"kg",M=>M.钢筋网重量.toFixed(P)),this.GetRowData(n,"初期支护","锚杆",l,l,"根",M=>M.拱部锚杆根数.toFixed(u)),this.GetRowData(n,"初期支护","锚杆",l,l,"m",M=>M.拱部锚杆长度.toFixed(u)),this.GetRowData(n,"初期支护","锚杆",_,_,"根",M=>M.边墙锚杆根数.toFixed(u)),this.GetRowData(n,"初期支护","锚杆",_,_,"m",M=>M.边墙锚杆长度.toFixed(u)),this.GetRowData(n,"初期支护","锚杆",h,h,"根",M=>M.仰拱锚杆根数.toFixed(u)),this.GetRowData(n,"初期支护","锚杆",h,h,"m",M=>M.仰拱锚杆长度.toFixed(u)),this.GetRowData(n,"二次衬砌","拱墙",d,d,"m(3)",M=>M.拱墙二衬混凝土方量.toFixed(P)),this.GetRowData(n,"二次衬砌","仰拱",d,d,"m(3)",M=>M.仰拱二衬混凝土方量.toFixed(P)),this.GetRowData(n,"二次衬砌","仰拱填充","C20混凝土","C20混凝土","m(3)",M=>M.仰拱填充混凝土方量.toFixed(P)),this.GetRowData(n,"二次衬砌","找平层","C20混凝土","C20混凝土","m(3)",M=>M.找平层混凝土方量.toFixed(P)),this.GetRowData(n,"二次衬砌","钢筋","HRB400(18mm≤!<28mm)","HRB400(18mm≤!<28mm)","kg",M=>M.HRB400钢筋重量18_28mm.toFixed(P)),this.GetRowData(n,"二次衬砌","钢筋","HRB400(!<18mm)","HRB400(!<18mm)","kg",M=>M.HRB400钢筋重量小于18mm.toFixed(P)),this.GetRowData(n,"二次衬砌","钢筋","HPB300(!≥10mm)","HPB300(!≥10mm)","kg",M=>M.HPB300钢筋重量大于10mm.toFixed(P)),this.GetRowData(n,"二次衬砌","钢筋","HPB300(!<10mm)","HPB300(!<10mm)","kg",M=>M.HPB300钢筋重量小于10mm.toFixed(P)),this.GetRowData(n,"二次衬砌","钢筋","钢筋接驳器","钢筋接驳器","个",M=>M.钢筋接驳器个数.toFixed(0)),this.GetRowData(n,"二次衬砌","接茬钢筋","HRB400","HRB400","kg",M=>M.接茬钢筋重量.toFixed(P))]}static GetRowData暂不删除(i,n,e,t,o,s,d){const c=[n,e,t,o,s];for(let l in i)c.push(d(i[l]));return c}GetRowData(i,n,e,t,o,s,d){const c=[n,e,t,o,s];for(const l of i.values())c.push(d(l));return c}DeleteUnnecessaryColumns(i,n){}}let bn=class extends ae{DeleteUnnecessaryColumns(i){const n=[];for(let e=n.length-1;e>=0;e--)i.setSelectedCells([{row:0,col:n[e]}]),i.deleteColumn()}},Xo=class{DrawTb(i,n){new Ie().ZhcsTable(i);const e=new Ko().CalcGcsl_Sx(i);new bn().Tb_GeneralQuantity(i,e,n)}};class mn{DrawAccessStep(i){const n=i.Property,e=i.LinData;a.MxCpp.getCurrentMxCAD().getSysVarDouble("LTSCALE");const o=[],s=[];try{if(e.railStyle=="无砟"){const d=new a.McGePoint3d(-e.b1_z,(e.H_ngToGb-e.H_ngToLjm)/2,0),c=new a.McGePoint3d(-e.b1_z+3,-e.H_ngToLjm-(e.b1_y+e.b1_z-e.d-e.w-28-6)/2*.02,0);s.push(d),s.push(new a.McGePoint3d(c.x,d.y,0)),s.push(c);const l=r.addPline4P(s,0,n.Color.Color_Jg,!1);o.push(l),o.push(v.Mirror(l,new a.McGePoint3d(0+e.RailCenterOffset,0,0),new a.McGePoint3d(0+e.RailCenterOffset,1,0),!1));const _=r.AddCircle(new a.McGePoint3d(-e.b1_z+.4,-e.H_ngToLjm,0),.4,n.Color.Color_Jg);o.push(_),o.push(v.Mirror(_,new a.McGePoint3d(0+e.RailCenterOffset,0,0),new a.McGePoint3d(0+e.RailCenterOffset,1,0),!1)),n.EntityIds.DicLinIdCol.set("TbId",o)}}catch(d){console.error("错误代码:1105","提示",d)}}}class Te{DrawFzx_Sx(i,n){const e=i.Setting,t=i.Property,o=i.LinData,s=[];let c=a.MxCpp.getCurrentMxCAD().getSysVarDouble("LTSCALE"),l=.5/c;try{let _=-(o.Dms[o.w].H_ngToFirstInvertBottom+o.d1+o.m1+3),h=o.Dms[o.w].H_ngToArchCenter+o.RadiusFirst1+o.d1+o.m1+3,P=50;n&&(P=25);let u=o.a/Math.tan(o.Radian_Arch1);s.push(r.addLine3P(new a.McGePoint3d(-o.b1_z,0,0),new a.McGePoint3d(o.b1_y,0,0),t.Color.Color_Fzx)),s.push(dt.addTriangle(new a.McGePoint3d(-(o.a-o.a_0)-o.d/2+o.RailCenterOffset,0,0),2)),s.push(r.addText6P(new a.McGePoint3d(-(o.a-o.a_0)-o.d/2+o.RailCenterOffset+2,0,0),"内轨顶面",t.TextHeight.Height_Ht,0,.7,0)),s.push(r.addLine(new a.McGePoint3d(-(o.a-o.a_0)-o.d/2+o.RailCenterOffset,-o.H_ngToBqpt,0),new a.McGePoint3d(-(o.a-o.a_0)-o.d/2+o.RailCenterOffset,o.O2_y.y+50,0),t.Color.Color_Fzx,"CENTER",5/c)),s.push(r.addMtext(new a.McGePoint3d(-(o.a-o.a_0)-o.d/2+o.RailCenterOffset-3,o.O2_y.y+P,0),"左线线路中线",t.TextHeight.Height_Ht,.8,1)),s.push(r.addLine(new a.McGePoint3d(0,h,0),new a.McGePoint3d(0,_,0),t.Color.Color_Fzx,"CENTER",l)),e.ChenQi.Tssz.X_Offset!=0?(s.push(r.addLine(new a.McGePoint3d(e.ChenQi.Tssz.X_Offset,o.H_ngToWidest-u+o.RadiusFourth1,0),new a.McGePoint3d(e.ChenQi.Tssz.X_Offset,o.O_Invert.y-o.RadiusFourth4-5,0),t.Color.Color_Fzx,"CENTER",5/c)),s.push(r.addMtext(new a.McGePoint3d(-3,o.O2_y.y+P-5,0),"初期支护中线",t.TextHeight.Height_Ht,.8,1)),s.push(r.addMtext(new a.McGePoint3d(-3,o.O2_y.y+P-5,0),"二次衬砌中线",t.TextHeight.Height_Ht,.8,1))):s.push(r.addMtext(new a.McGePoint3d(-3,o.O2_y.y+P-5,0),"断面中线",t.TextHeight.Height_Ht,.8,1)),o.RailCenterOffset!=0&&(s.push(r.addLine(new a.McGePoint3d(o.RailCenterOffset,o.H_ngToWidest-u+o.RadiusFourth1,0),new a.McGePoint3d(o.RailCenterOffset,o.O_Invert.y-o.RadiusFourth4-5,0),t.Color.Color_Fzx,"CENTER",5/c)),o.RailCenterOffset>0?s.push(r.addMtext(new a.McGePoint3d(o.RailCenterOffset+1,o.O2_y.y+P-5,0),"隧道中线",t.TextHeight.Height_Ht,.8,1)):s.push(r.addMtext(new a.McGePoint3d(o.RailCenterOffset-3,o.O2_y.y+P-5,0),"隧道中线",t.TextHeight.Height_Ht,.8,1))),s.push(r.addLine(new a.McGePoint3d(o.a-o.a_0+o.d/2+o.RailCenterOffset,-o.H_ngToBqpt,0),new a.McGePoint3d(o.a-o.a_0+o.d/2+o.RailCenterOffset,o.O2_y.y+50,0),t.Color.Color_Fzx,"CENTER",5/c)),s.push(r.addMtext(new a.McGePoint3d(o.a-o.a_0+o.d/2+o.RailCenterOffset+1,o.O2_y.y+P,0),"右线线路中线",t.TextHeight.Height_Ht,.8,1)),t.EntityIds.DicLinIdCol.set("FzxIdcol",s)}catch(_){console.error("错误代码 1103","提示",_)}}DrawFzx_Dx(i){const n=i.Property,e=i.LinData;try{const t=[];let s=a.MxCpp.getCurrentMxCAD().getSysVarDouble("LTSCALE");t.push(dt.addTriangle(a.McGePoint3d.kOrigin,2)),t.push(r.addText6P(new a.McGePoint3d(2,0,0),"内轨顶面",3.5,0,.7,0)),t.push(r.addLine3P(new a.McGePoint3d(-e.b1_z,0,0),new a.McGePoint3d(e.b1_y,0,0),7)),t.push(r.addLine(new a.McGePoint3d(0,-30,0),new a.McGePoint3d(0,e.H_ngToWidest+e.RadiusFourth2+3,0),7,"CENTER",5/s)),e.b1_y!=e.b1_z&&t.push(r.addLine(new a.McGePoint3d((e.b1_y-e.b1_z)/2,-30,0),new a.McGePoint3d((e.b1_y-e.b1_z)/2,e.H_ngToWidest+e.RadiusFourth2+3,0),7,"CENTER",5/s)),e.b1_y>e.b1_z?(t.push(r.addMtext(new a.McGePoint3d(e.O1.x-3.5,e.O1.y+35,0),"断 面 中 线",3.5,.7,1)),t.push(r.addMtext(new a.McGePoint3d(e.O1.x+1+(e.b1_y-e.b1_z)/2,e.O1.y+35,0),"线 路 中 线",3.5,.7,1))):(t.push(r.addMtext(new a.McGePoint3d(e.O1.x+1,e.O1.y+35,0),"断 面 中 线",3.5,.7,1)),t.push(r.addMtext(new a.McGePoint3d(e.O1.x-3.5+(e.b1_y-e.b1_z)/2,e.O1.y+35,0),"线 路 中 线",3.5,.7,1))),n.EntityIds.DicLinIdCol.set("DrawFzx",t)}catch(t){console.error("错误代码 1103","提示")}}DrawFzx_Fzkd(i){const n=i.Property,e=i.LinData;try{const t=[];let s=a.MxCpp.getCurrentMxCAD().getSysVarDouble("LTSCALE");t.push(dt.addTriangle(a.McGePoint3d.kOrigin,2)),t.push(r.addText6P(new a.McGePoint3d(2,0,0),"坑底面",3.5,0,.7,0)),t.push(r.addLine(new a.McGePoint3d(0,-30,0),new a.McGePoint3d(0,e.H_ngToWidest+e.RadiusFourth2+3,0),7,"CENTER",5/s)),e.b1_y!=e.b1_z&&t.push(r.addLine(new a.McGePoint3d((e.b1_y-e.b1_z)/2,-30,0),new a.McGePoint3d((e.b1_y-e.b1_z)/2,e.H_ngToWidest+e.RadiusFourth2+3,0),7,"CENTER",5/s)),t.push(r.addMtext(new a.McGePoint3d(e.O1.x-3.5,e.O1.y+25,0),"断 面 中 线",3.5,.7,1)),n.EntityIds.DicLinIdCol.set("DrawFzx",t)}catch(t){console.log("错误代码 1103","提示",t)}}}class _t{DrawCq(i,n,e){const t=i.Property;try{const o=[],s=[];o.push(r.addPline4P(X.DicToPt3dcol(t.ContourPoints.Cq.DicFirst),0,e,!0)),s.push(r.addPline4P(X.DicToPt3dcol(t.ContourPoints.Cq.DicSecond),0,e,!0)),n.set("FirstId",o),n.set("SecondId",s)}catch(o){console.log("绘衬砌轮廓错误",o)}}DrawCqzf(i,n,e){const t=i.Property;try{const o=[],s=[],d=[];o.push(r.addPline4P(X.DicToPt3dcol(t.ContourPoints.Cq.DicForth_Gq),0,3,!0)),s.push(r.addPline4P(X.DicToPt3dcol(t.ContourPoints.Cq.DicThird_Ylbx_Gq),0,4,!0)),n.set("ForthId_Gq",o),n.set("ThirdId_Gq",s),t.ContourPoints.Cq.DicForth_Yg!=null&&(d.push(r.addPline4P(X.DicToPt3dcol(t.ContourPoints.Cq.DicForth_Yg),0,6,!0)),n.set("ForthId_Yg",d))}catch(o){console.log("绘初支轮廓错误",o)}}DrawYlbx(i){const n=i.Property;try{const e=[];if(e.push(r.addPline4P(X.DicToPt3dcol(n.ContourPoints.Cq.DicThird_Ylbx_Gq),0,22,!0)),n.EntityIds.DicLinIdCol.set("DrawYlbx_Gq",e),n.ContourPoints.Cq.DicThird_Ylbx_Yg!=null){const t=[];t.push(r.addPline4P(X.DicToPt3dcol(n.ContourPoints.Cq.DicThird_Ylbx_Yg),0,22,!0)),n.EntityIds.DicLinIdCol.set("DrawYlbx_Yg",t)}}catch(e){console.log("绘预留变形线错误",e)}}DrawLjx(i,n){const e=i.Property,t=[];try{const o=e.EntityIds.DicLinIdCol.get("ForthId_Gq")[0],s=o.getMcDbEntity(),d=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y1"),c=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z5");if(d!=s.getPointAt(0).val){const l=A.IntsOfLineToCurve(d,new a.McGePoint3d(d.x-1,d.y,0),o,"MaxX"),_=A.IntsOfLineToCurve(c,new a.McGePoint3d(c.x-1,c.y,0),o,"MinX");t.push(r.addLine3P(l,d,e.Color.Color_Jg)),t.push(r.addLine3P(_,c,e.Color.Color_Jg)),e.EntityIds.DicLinIdCol.set("Ljx1",t)}}catch(o){console.log("错误代码 1107",o)}}}class Ee{DrawSgf(i){const n=i.Property,e=1;try{const t=[],o=[];t.push(r.addLine(n.KeyPoint.pt施工缝左1,n.KeyPoint.pt施工缝左2,n.Color.Color_Jg,"DASHED",.3/e)),o.push(r.addLine(n.KeyPoint.pt施工缝右1,n.KeyPoint.pt施工缝右2,n.Color.Color_Jg,"DASHED",.3/e)),n.EntityIds.DicLinIdCol.set("ZsgfId",t),n.EntityIds.DicLinIdCol.set("YsgfId",o)}catch(t){console.log("错误代码:1106",t)}}}class Vt{DrawTc_Sx(i,n,e){const t=i.Setting,o=i.Property,s=i.LinData,d=[];try{const c=t.ChenQi.Sg.Zxsg.A/10,l=t.ChenQi.Sg.Zxsg.B/10,_=t.ChenQi.Sg.Zxsg.D/10,h=.02,P=r.addPline4P(X.DicToPt3dcol(o.ContourPoints.Cq.DicFirst),0,e,!0),u=[];if(s.railStyle==="有砟"){s.ptTc1=A.IntsOfLineToCurve(new a.McGePoint3d(0,-s.dblHeight1,0),new a.McGePoint3d(1,-s.dblHeight1,0),P,"MinX"),s.ptTc2=new a.McGePoint3d(-s.b1_z,-s.dblHeight1,0);const p=new a.McGePoint3d(-_/2+s.RailCenterOffset,-s.dblHeight2,0),M=new a.McGePoint3d(_/2+s.RailCenterOffset,-s.dblHeight2,0),g=new a.McGePoint3d(s.b1_y,-s.dblHeight1,0),C=new a.McGePoint3d(-s.ptTc1.x,s.ptTc1.y,0);t.ChenQi.Cqdm.Spxj?(u.push(s.ptTc1),u.push(s.ptTc2),u.push(p),u.push(M),u.push(g),u.push(C)):(u.push(s.ptTc2),u.push(p),u.push(M),u.push(g)),d.push(r.addPline4P(u,0,e,!0))}else if(s.railStyle==="无砟"){u.length=0,s.ptTc1=A.IntsOfLineToCurve(new a.McGePoint3d(0,-s.H_ngToLjm,0),new a.McGePoint3d(1,-s.H_ngToLjm,0),P,"MinX"),s.ptTc2=new a.McGePoint3d(-s.b1_z,-s.H_ngToLjm,0);const p=new a.McGePoint3d(-s.b1_z+.8,-s.H_ngToLjm-(s.b1_y+s.b1_z-s.d-s.w-28)/2*h,0),M=new a.McGePoint3d(-s.b1_z+(s.b1_y+s.b1_z-s.d-s.w-28)/2+s.RailCenterOffset,-s.H_ngToLjm,0),g=new a.McGePoint3d(-(s.d+s.w-28)/2+s.RailCenterOffset,-s.H_ngToLjm,0),C=new a.McGePoint3d(-(c/2+l)+s.RailCenterOffset,-s.H_ngToLjm-(s.d+s.w-28-c-2*l)/2*h,0);u.push(p),u.push(M),u.push(g),u.push(C);const y=r.addPline4P(u,0,e,!0);if(d.push(y),d.push(v.Mirror(y,new a.McGePoint3d(0+s.RailCenterOffset,0,0),new a.McGePoint3d(0+s.RailCenterOffset,1,0),!1)),t.ChenQi.Cqdm.Spxj){const F=r.addLine3P(s.ptTc1,s.ptTc2,e);d.push(F),d.push(r.addLine3P(new a.McGePoint3d(-s.ptTc1.x,s.ptTc1.y,0),new a.McGePoint3d(s.b1_y,-s.H_ngToLjm,0),e))}}v.Erase(P),n.set("TcId",d)}catch(c){console.log("错误代码:1105",c)}}DrawTc_Dx(i,n,e){const t=i.LinData;try{const s=[];let d,c,l,_;const h=[];t.railStyle==="有砟"?(d=new a.McGePoint3d(-(t.b1_z+(t.Z1c1g.b侧壁厚+t.Z1c1g.b侧壁盖板搭接宽)),-t.H_ngToLjm-((t.b1_y-t.b1_z)/2+t.b1_z+(t.Z1c1g.b侧壁厚+t.Z1c1g.b侧壁盖板搭接宽))*.02,0),c=new a.McGePoint3d((t.b1_y-t.b1_z)/2,-t.H_ngToLjm,0),l=new a.McGePoint3d(t.b1_y+(t.Y1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽),-t.H_ngToLjm-(-(t.b1_y-t.b1_z)/2+t.b1_y+(t.Y1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽))*.02,0),h.push(d),h.push(c),h.push(l)):(d=new a.McGePoint3d(-(t.b1_z+(t.Z1c1g.b侧壁厚+t.Z1c1g.b侧壁盖板搭接宽)),-t.H_ngToLjm-(t.b1_z+(t.b1_y-t.b1_z)/2-14+(t.Z1c1g.b侧壁厚+t.Z1c1g.b侧壁盖板搭接宽))*.02,0),c=new a.McGePoint3d(-14+(t.b1_y-t.b1_z)/2,-t.H_ngToLjm,0),l=new a.McGePoint3d(14+(t.b1_y-t.b1_z)/2,-t.H_ngToLjm,0),_=new a.McGePoint3d(t.b1_y+(t.Y1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽),-t.H_ngToLjm-(t.b1_y-(t.b1_y-t.b1_z)/2-14+(t.Y1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽))*.02,0),h.push(d),h.push(c),h.push(l),h.push(_)),s.push(r.addPline4P(h,0,e,!0)),n.set("TcId",s)}catch(o){console.log("错误代码:1106",o)}}DrawTc_SL4CenterDx(i,n){const e=i.Property,t=i.LinData;try{const s=[];let d,c,l,_;const h=[];t.railStyle==="有砟"?(d=new a.McGePoint3d(-t.b1_z,-t.H_ngToLjm-((t.b1_y-t.b1_z)/2+t.b1_z+(t.Z1c1g.b侧壁厚+t.Z1c1g.b侧壁盖板搭接宽))*.02,0),c=new a.McGePoint3d((t.b1_y-t.b1_z)/2,-t.H_ngToLjm,0),l=new a.McGePoint3d(t.b1_y,-t.H_ngToLjm-(-(t.b1_y-t.b1_z)/2+t.b1_y+(t.Y1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽))*.02,0),h.push(d),h.push(c),h.push(l)):(d=new a.McGePoint3d(-t.b1_z,-t.H_ngToLjm-(t.b1_z+(t.b1_y-t.b1_z)/2-14+(t.Z1c1g.b侧壁厚+t.Z1c1g.b侧壁盖板搭接宽))*.02,0),c=new a.McGePoint3d(-14+(t.b1_y-t.b1_z)/2,-t.H_ngToLjm,0),l=new a.McGePoint3d(14+(t.b1_y-t.b1_z)/2,-t.H_ngToLjm,0),_=new a.McGePoint3d(t.b1_y,-t.H_ngToLjm-(t.b1_y-(t.b1_y-t.b1_z)/2-14+(t.Y1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽))*.02,0),h.push(d),h.push(c),h.push(l),h.push(_)),s.push(r.addPline4P(h,0,e.Color.Color_Jg,!0)),e.EntityIds.DicLinIdCol.set("TcId",s)}catch(o){console.log("错误代码:1106",o)}}}class Fe{Note_Sx(i){const n=i.Data,e=i.Setting,t=i.Property;try{let o="说明:\\P 1、本图尺寸除注明者外均以厘米计。",s="图中W值为线间距大于"+n.Cq.Dmcc.d.toString()+"cm时之加宽值,加宽值为10cm的整数倍,d为实际线间距值。",d="\\P 2、本图适用于"+n.Cq.Sydl.Dl+";衬砌钢筋布置见“"+n.Pj.Pjtk.Th1+"”图。 ",c;n.Cq.Cqtk.Gdlx==="有砟"?c="\\P 3、本图按有砟轨道碎石道床结构设计,轨道结构高度为"+n.Cq.Dmcc.H_ngToLjm.toString()+"cm,内轨顶面至道砟底面的高度在沟槽边为74cm,在隧道中线处为83cm。\\P":c="\\P 3、本图按无砟轨道结构设计,轨道结构高度为"+n.Cq.Dmcc.H_ngToLjm.toString()+"cm。\\P";let l="";e.ChenQi.Cqdm.Zxsg?l=` 4、建筑材料:
|
|
11
|
+
喷混凝土:${n.Cq.Jzcl.Phntcl};
|
|
12
|
+
钢筋网:HPB300钢筋,直径!${n.Cq.Zhcs.Fwi_wpzj.toString()};
|
|
13
|
+
锚杆:硬岩地段采用低预应力涨壳式中空锚杆,软岩地段采用低预应力树脂中空锚杆;
|
|
14
|
+
拱墙及仰拱:${n.Cq.Jzcl.Hntcl};
|
|
15
|
+
仰拱填充:C20混凝土;
|
|
16
|
+
沟槽身:${e.ChenQi.Cqsz.Sgdlc.Cgcshntcl};
|
|
17
|
+
中心沟:${e.ChenQi.Cqsz.Sgdlc.Zxsghntcl};
|
|
18
|
+
水沟盖板及电缆槽盖板:${e.ChenQi.Cqsz.Sgdlc.Cggbhntcl}。`:l=` 4、建筑材料:
|
|
19
|
+
喷混凝土:${n.Cq.Jzcl.Phntcl};
|
|
20
|
+
钢筋网:HPB300钢筋,直径!${n.Cq.Zhcs.Fwi_wpzj.toString()};
|
|
21
|
+
锚杆:硬岩地段采用低预应力涨壳式中空锚杆,软岩地段采用低预应力树脂中空锚杆;
|
|
22
|
+
拱墙及仰拱:${n.Cq.Jzcl.Hntcl};
|
|
23
|
+
仰拱填充:C20混凝土;
|
|
24
|
+
沟槽身:${e.ChenQi.Cqsz.Sgdlc.Cgcshntcl};
|
|
25
|
+
中心管:${e.ChenQi.Cqsz.Sgdlc.Cggbhntcl};
|
|
26
|
+
检查井井身:${e.ChenQi.Cqsz.Sgdlc.Zxsghntcl}
|
|
27
|
+
水沟盖板及电缆槽盖板:${e.ChenQi.Cqsz.Sgdlc.Cggbhntcl}。`;const _="\\P 5、图中锚杆布置为示意,本断面预留变形量未示。 ",h="\\P 6、水沟、电缆槽及盖板设计详见“"+e.Yyth.Sgdlcgbth+"”图。";let P;n.Cq.Cqtk.Gdlx==="有砟"?P="\\P 7、拱墙分界以拱部"+n.Cq.Dmcc.Angle_Gb.toString()+"°划分,仰拱填充顶面设置2%的横向排水坡。":P="\\P 7、拱墙分界以拱部"+n.Cq.Dmcc.Angle_Gb.toString()+"°划分,线路中线左右各140cm范围外仰拱填充顶面设置2%的横向排水坡。";const u="\\P 8、图中未详尽处见有关规范、规定及设计图。";let p=o+s+d+c+l+_+h+P+u;p=p.replace(/砼/g,"混凝土"),r.AddMtext(t.FrameCoords.Cq.ptNote_TopLeft1,p,4.5,140)}catch(o){console.log("错误代码 1501",o)}}Note_Dx(i){const n=i.Data,e=i.Setting,t=i.Property,o=i.LinData;try{let s="附注:\\P 1. 本图尺寸除注明者外均以厘米计。",d=" 2. 本图适用于"+n.Cq.Sydl.Dl+";衬砌钢筋布置见“"+n.Pj.Pjtk.Th1+"”图。";n.Pj.Pjcs.SpacingN1234===0&&(d=" 2. 本图适用于"+n.Cq.Sydl.Dl+"。");let c="";o.railStyle==="有砟"?c=" 3. 本图按有砟轨道碎石道床结构设计,内轨顶面至道碴底面的高度在隧道中线处为"+(10*o.H_ngToLjm).toString()+"cm。":c=" 3. 本图按无砟轨道结构设计,内轨顶面至无砟轨道底面高度为"+(10*o.H_ngToLjm).toString()+"cm。";const l=" 4. 建筑材料:\\P 喷混凝土:"+n.Cq.Jzcl.Phntcl+";钢筋网:HPB300钢筋,直径!"+n.Cq.Zhcs.Fwi_wpzj.toString()+";\\P 锚杆:拱部采用低预应力锚杆;边墙采用$22药卷锚杆; \\P 拱部及边墙:"+n.Cq.Jzcl.Hntcl+";仰拱:"+n.Cq.Jzcl.Hntcl+" ;仰拱填充:C20混凝土;\\P 沟槽身:C25混凝土;水沟盖板及电缆槽盖板:C35钢筋混凝土。 ";let _=" 5. 本图未示初期支护预留变形量,图中锚杆布置为示意。";(n.Cq.Zhcs.Mgbw===W.Gb||n.Cq.Zhcs.Mgbw===W.Gq)&&(_=" 5. 本图未示初期支护预留变形量。");const h=" 6. 水沟、电缆槽及盖板设计详见“"+e.Yyth.Sgdlcgbth+"”图。";let P=" 7. 拱墙分界以拱部"+o.AngleGb.toString()+"°划分,具体详见“"+e.Yyth.Xjtth+"”图,隧道底板顶面设置2%的横向排水坡。 ";o.railStyle==="无砟"&&(P=" 7. 拱墙分界以拱部"+o.AngleGb.toString()+"°划分,具体详见“"+e.Yyth.Xjtth+"”图,隧道中线左右各140cm范围外底板顶面设置2%的横向排水坡。");const u=" 8. 图中未详尽处见有关规范、规定及设计图。",p=s+"\\P"+d+"\\P"+c+"\\P"+l+"\\P"+_+"\\P"+h+"\\P"+P+"\\P"+u;r.addMtext(t.FrameCoords.Cq.ptNote_TopLeft1,p,4.5,1,160)}catch(s){console.log("错误代码 1501",s)}}Note_Quantity_Dx(i){const n=i.Setting,e=i.Property;try{const t="注:\\P 1. 数量表中开挖数量未计列预留变形量及超挖等引起的开挖量。",o=" 2. 预留变形量按设计支护参数表中相应衬砌类型的中值计算,预留变形回填量按预留变形量1/3计列。",s=" 3. 一般地段拱墙设置EVA防水板+土工布,可岩溶及地下水发育段拱墙设置防排水板",d=" 4. 一般段拱墙环向盲管间距按"+n.ChenQi.Cqsz.Fps.Hxmgzxjj.toString()+"m计;可溶岩地段隧底!80环向盲管及!90竖向泄压孔,纵向间距按2m计",c=" 5. 隧道边墙浇筑时泄水孔处预埋PVC管:一般地段孔径为!110,纵向间距4m计;可岩溶地段孔径为!200,纵向间距按2m计",l=" 5. 拱墙、仰拱、仰拱填充、沟槽施工缝按"+n.ChenQi.Cqsz.Fps.Hxsgfjj.toString()+"m/道计列工程数量",_=t+"\\P"+o+"\\P"+s+"\\P"+d+"\\P"+c+"\\P"+l+"\\P";r.addMtext(e.FrameCoords.Cq.ptNote_TopLeft2,_,4.5,1,120)}catch(t){console.log("错误代码 1501",t)}}Note_Fzkd(i){const n=i.Data,e=i.Setting,t=i.Property,o=i.LinData;try{const s="说明:\\P 1. 本图尺寸除注明者外均以厘米计。";let d=" 2. 本图为"+n.Cq.Sydl.Dl+"。衬砌钢筋布置见“"+n.Pj.Pjtk.Th1+"”图。";o.Fwi===0&&(d=" 2. 本图为"+n.Cq.Sydl.Dl+"。");const c=" 3. 建筑材料:\\P 喷混凝土:"+n.Cq.Jzcl.Phntcl+";钢筋网:HPB300钢筋,直径!"+o.Fwi.toString("F0")+";\\P 锚杆:拱部采用^22组合中空锚杆;边墙采用$22砂浆锚杆或全螺纹砂浆锚杆; \\P 拱部及边墙:"+n.Cq.Jzcl.Hntcl+";仰拱:"+n.Cq.Jzcl.Hntcl+" ;仰拱填充:C20混凝土;\\P 沟槽身:C25混凝土;水沟盖板及电缆槽盖板:C35钢筋混凝土。 ";let l=" 4. 本图未示初期支护预留变形量,图中锚杆布置为示意。";(n.Cq.Zhcs.Mgbw!==W.Gb||n.Cq.Zhcs.Mgbw!==W.Gq)&&(l=" 4. 本图未示初期支护预留变形量,数量表中开挖未计超挖,衬砌圬工中未计回填。");const _=" 5. 水沟及盖板设计详见“"+e.Yyth.Sgdlcgbth+"”图。",h=" 6. 拱墙分界以拱部"+o.AngleGb.toString()+"°划分,隧道仰拱填充层顶面设置2%的横向排水坡 ",P=" 7. 图中未详尽处见有关规范、规定及设计图。",u=s+"\\P"+d+"\\P"+c+"\\P"+l+"\\P"+_+"\\P"+h+"\\P"+P;r.AddMtext(t.FrameCoords.Cq.ptNote_TopLeft1,u,4.5,160)}catch(s){console.log("错误代码 1501",s)}}}class Jt{static A3Frame2(i,n,e,t,o,s,d,c,l){const _=[],h=[],P=[],u=new a.McGePoint3d(0,0,0),p=r.PolarPoint(u,Math.PI*3/2,297),M=r.PolarPoint(p,0,420),g=r.PolarPoint(M,Math.PI/2,297);P.push(u),P.push(p),P.push(M),P.push(g),P.push(u),_.push(r.addPline5P(P,0,7,!0,!1));const C=[],y=new a.McGePoint3d(u.x+25,u.y-5,0),F=r.PolarPoint(y,Math.PI*3/2,287),I=r.PolarPoint(F,0,390),T=r.PolarPoint(I,Math.PI/2,287);C.push(y),C.push(F),C.push(I),C.push(T),C.push(y),_.push(r.addPline5P(C,0,6,!0,!1)),_.push(r.addLine3P(r.PolarPoint(I,Math.PI/2,8),r.PolarPoint(r.PolarPoint(I,Math.PI/2,8),Math.PI,50),7)),_.push(r.addLine3P(r.PolarPoint(I,Math.PI/2,16),r.PolarPoint(r.PolarPoint(I,Math.PI/2,16),Math.PI,50),7)),_.push(r.addLine3P(r.PolarPoint(I,Math.PI,50),r.PolarPoint(r.PolarPoint(I,Math.PI,50),Math.PI/2,24),7)),_.push(r.addLine3P(r.PolarPoint(I,Math.PI,35),r.PolarPoint(r.PolarPoint(I,Math.PI,35),Math.PI/2,24),7)),_.push(r.addLine3P(r.PolarPoint(I,Math.PI,140),r.PolarPoint(r.PolarPoint(I,Math.PI,140),Math.PI/2,24),7)),_.push(r.addLine3P(r.PolarPoint(I,Math.PI,165),r.PolarPoint(r.PolarPoint(I,Math.PI,165),Math.PI/2,24),7)),_.push(r.addLine3P(new a.McGePoint3d(I.x-140,I.y+12,0),new a.McGePoint3d(I.x-180,I.y+12,0),7)),_.push(r.addLine3P(r.PolarPoint(I,Math.PI/2,24),r.PolarPoint(r.PolarPoint(I,Math.PI/2,24),Math.PI,180),1)),_.push(r.addLine3P(r.PolarPoint(I,Math.PI,180),r.PolarPoint(r.PolarPoint(I,Math.PI,180),Math.PI/2,24),1)),_.push(r.addText6(new a.McGePoint3d(I.x-177.5,I.y+16,0),"设 计",4,0,.7,0)),_.push(r.addText6(new a.McGePoint3d(I.x-177.5,I.y+4,0),"复 核",4,0,.7,0)),_.push(r.addText6(new a.McGePoint3d(I.x-47.5,I.y+18,0),"图 号",4,0,.7,0)),_.push(r.addText6(new a.McGePoint3d(I.x-47.5,I.y+10,0),"比 例",4,0,.7,0)),_.push(r.addText6(new a.McGePoint3d(I.x-47.5,I.y+2,0),"日 期",4,0,.7,0));for(let O of _)h.push(O);let R=new a.McObjectId;n!=""&&(R=r.addText(new a.McGePoint3d(i.x+320,i.y-272.5,0),n,4,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid),h.push(R));let L=new a.McObjectId;e!=""&&(L=r.addText(new a.McGePoint3d(i.x+320,i.y-279.5,0),e,5,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid),h.push(L));let f=new a.McObjectId;t!=""&&(f=r.addText(new a.McGePoint3d(i.x+320,i.y-287,0),t,5.5,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid),h.push(f));let G=new a.McObjectId;if(o!=""&&(G=r.addText(new a.McGePoint3d(i.x+397.5,i.y-272,0),o,4,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid),h.push(G)),h.push(r.addText(new a.McGePoint3d(i.x+397.5,i.y-280,0),s,4,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),h.push(r.addText(new a.McGePoint3d(i.x+397.5,i.y-288,0),d,4,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),!R.isNull()){const O=R.getMcDbEntity();if(O){const b=O.getBoundingBox(),H=Math.abs(b.maxPt.x-b.minPt.x);if(H>90){const x=new a.McDbText(O);x.widthFactor=89*.7/H}}}if(!L.isNull()){const O=L.getMcDbEntity();if(O){const b=O.getBoundingBox(),H=Math.abs(b.maxPt.x-b.minPt.x);if(H>90){const x=new a.McDbText(O);x.widthFactor=89*.7/H}}}if(!f.isNull()){const O=f.getMcDbEntity();if(O){const b=O.getBoundingBox(),H=Math.abs(b.maxPt.x-b.minPt.x);if(H>90){const x=new a.McDbText(O);x.widthFactor=89*.7/H}}}if(!G.isNull()){const O=G.getMcDbEntity();if(O){const b=O.getBoundingBox(),H=Math.abs(b.maxPt.x-b.minPt.x);if(H>35){const x=new a.McDbText(O);x.widthFactor=34*.7/H}}}for(let O of h)v.Scale(O.getMcDbEntity(),i,c);return h}static A3Frame3(i,n,e,t,o,s,d,c){const l=[],_=[],h=i,P=r.PolarPoint(h,Math.PI*3/2,297),u=r.PolarPoint(P,0,420),p=r.PolarPoint(u,Math.PI/2,297),M=new a.McGePoint3d(h.x+25,h.y-5,0),g=r.PolarPoint(M,Math.PI*3/2,287),C=r.PolarPoint(g,0,390),y=r.PolarPoint(C,Math.PI/2,287),F=[];F.push(M),F.push(g),F.push(C),F.push(y),F.push(M),l.push(r.addPline5P(F,0,6,!0,!1));const I=[];I.push(h),I.push(P),I.push(u),I.push(p),I.push(h),l.push(r.addPline5P(I,0,7,!0,!1)),l.push(r.addLine3P(r.PolarPoint(C,Math.PI/2,8),r.PolarPoint(r.PolarPoint(C,Math.PI/2,8),Math.PI,50),7)),l.push(r.addLine3P(r.PolarPoint(C,Math.PI/2,16),r.PolarPoint(r.PolarPoint(C,Math.PI/2,16),Math.PI,50),7)),l.push(r.addLine3P(r.PolarPoint(C,Math.PI,50),r.PolarPoint(r.PolarPoint(C,Math.PI,50),Math.PI/2,24),7)),l.push(r.addLine3P(r.PolarPoint(C,Math.PI,35),r.PolarPoint(r.PolarPoint(C,Math.PI,35),Math.PI/2,24),7)),l.push(r.addLine3P(r.PolarPoint(C,Math.PI,140),r.PolarPoint(r.PolarPoint(C,Math.PI,140),Math.PI/2,24),7)),l.push(r.addLine3P(r.PolarPoint(C,Math.PI,165),r.PolarPoint(r.PolarPoint(C,Math.PI,165),Math.PI/2,24),7)),l.push(r.addLine3P(new a.McGePoint3d(C.x-140,C.y+8,0),new a.McGePoint3d(C.x-180,C.y+8,0),7)),l.push(r.addLine3P(new a.McGePoint3d(C.x-140,C.y+16,0),new a.McGePoint3d(C.x-180,C.y+16,0),7)),l.push(r.addLine3P(r.PolarPoint(C,Math.PI/2,24),r.PolarPoint(r.PolarPoint(C,Math.PI/2,24),Math.PI,180),1)),l.push(r.addLine3P(r.PolarPoint(C,Math.PI,180),r.PolarPoint(r.PolarPoint(C,Math.PI,180),Math.PI/2,24),1)),l.push(r.addText6(new a.McGePoint3d(C.x-177.5,C.y+18,0),"设 计",4,0,.7,0)),l.push(r.addText6(new a.McGePoint3d(C.x-177.5,C.y+10,0),"复 核",4,0,.7,0)),l.push(r.addText6(new a.McGePoint3d(C.x-177.5,C.y+2,0),"审 核",4,0,.7,0)),l.push(r.addText6(new a.McGePoint3d(C.x-47.5,C.y+18,0),"图 号",4,0,.7,0)),l.push(r.addText6(new a.McGePoint3d(C.x-47.5,C.y+10,0),"比 例",4,0,.7,0)),l.push(r.addText6(new a.McGePoint3d(C.x-47.5,C.y+2,0),"日 期",4,0,.7,0));for(let f of l)_.push(f);let T=new a.McObjectId;n!=""&&(T=r.addText(new a.McGePoint3d(i.x+320,i.y-272.5,0),n,4,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid),_.push(T));let R=new a.McObjectId;e!=""&&(R=r.addText(new a.McGePoint3d(i.x+320,i.y-280,0),e,5,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid),_.push(R));let L=new a.McObjectId;if(t!=""&&(L=r.addText(new a.McGePoint3d(i.x+397.5,i.y-272,0),t,4,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid),_.push(L)),_.push(r.addText(new a.McGePoint3d(i.x+397.5,i.y-280,0),o,4,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),_.push(r.addText(new a.McGePoint3d(i.x+397.5,i.y-288,0),s,4,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)),!T.isNull()){const f=T.getMcDbEntity(),G=f.getBoundingBox(),O=G?Math.abs(G.maxPt.x-G.minPt.x):0;O>90&&(f.widthFactor=89*.7/O)}if(!R.isNull()){const f=R.getMcDbEntity();if(f){const G=f.getBoundingBox(),O=Math.abs(G.maxPt.x-G.minPt.x);O>90&&(f.widthFactor=89*.7/O)}}if(!L.isNull()){const f=L.getMcDbEntity();if(f){const G=f.getBoundingBox(),O=Math.abs(G.maxPt.x-G.minPt.x);O>35&&(f.widthFactor=34*.7/O)}}return _}}class Ve{DrawTk(i,n){const e=i.Data,t=i.Setting,o=i.Property;try{let s=e.Cq.Cqtk.Th,d=e.Cq.Cqtk.Th;t.ChenQi.Cqdm.IsThbt&&(s+="-01",d+="-02"),n>=1&&Jt.A3Frame3(o.FrameCoords.Cq.ptBase1,e.Cq.Cqtk.Dtm,e.Cq.Cqtk.Xtm,e.Cq.Cqtk.Th,"1:"+t.ChenQi.Cqdm.Sc.toString(),e.Cq.Cqtk.Htrq,1,!0),n>=2&&Jt.A3Frame3(o.FrameCoords.Cq.ptBase2,e.Cq.Cqtk.Dtm,e.Cq.Cqtk.Xtm,e.Cq.Cqtk.Th,"1:"+t.ChenQi.Cqdm.Sc.toString(),e.Cq.Cqtk.Htrq,1,!0),n>=3&&Jt.A3Frame3(o.FrameCoords.Cq.ptBase3,e.Cq.Cqtk.Dtm,e.Cq.Cqtk.Xtm,e.Cq.Cqtk.Th,"1:"+t.ChenQi.Cqdm.Sc.toString(),e.Cq.Cqtk.Htrq,1,!0)}catch(s){console.log("错误代码 1111",s)}}}class On{DrawHxmg(i){const n=i.Property,e=i.LinData;try{const t=n.EntityIds.DicLinIdCol.get("SecondId")[0],s=t.getMcDbEntity().offsetCurves(.4,new a.McGePoint3d),d=r.AppendEntity(s.aryVal[0]),c=[],l=new a.McGePoint3d(e.b1_y+e.Z2c1g.b侧壁厚+e.Z2c1g.b侧壁盖板搭接宽+e.Z2c1g.b沟槽间壁厚1+e.Z2c1g.B_电力电缆槽宽,-e.H_sgdToGb+e.H_ngToGb,0),_=new a.McGePoint3d(-e.ptTc2.x,e.ptTc2.y-2,0),h=new a.McGePoint3d(e.Zxsg.zxA内侧宽/2+e.RailCenterOffset,-e.dblHeight2+3.8*e.dblGradOfInvertFilling-4,0);c.push(l),c.push(_),c.push(h);const P=r.addPline5P(c,0,n.Color.Color_Qtxx,!0,!1),u=[],p=new a.McGePoint3d(e.b1_y+e.Z2c1g.b侧壁厚+e.Z2c1g.b侧壁盖板搭接宽+e.Z2c1g.b沟槽间壁厚1+e.Z2c1g.B_电力电缆槽宽,-e.H_sgdToGb+e.H_ngToGb+1,0),M=new a.McGePoint3d(-e.ptTc2.x,e.ptTc2.y-1,0),g=new a.McGePoint3d(e.Zxsg.zxA内侧宽/2+e.RailCenterOffset,-e.dblHeight2+3.8*e.dblGradOfInvertFilling-4+1,0);u.push(p),u.push(M),u.push(g);const C=r.addPline5P(u,0,n.Color.Color_Qtxx,!0,!1),y=[];y.push(P),y.push(C),y.push(v.Mirror(P,new a.McGePoint3d(e.RailCenterOffset,0,0),new a.McGePoint3d(e.RailCenterOffset,1,0),!1)),y.push(v.Mirror(C,new a.McGePoint3d(e.RailCenterOffset,0,0),new a.McGePoint3d(e.RailCenterOffset,1,0),!1));const F=-(e.b1_z+e.Z2c1g.b侧壁厚+e.Z2c1g.b侧壁盖板搭接宽+e.Z2c1g.b沟槽间壁厚1+e.Z2c1g.B_电力电缆槽宽+e.Z2c1g.B_水沟宽),I=e.b1_y+e.Z2c1g.b侧壁厚+e.Z2c1g.b侧壁盖板搭接宽+e.Z2c1g.b沟槽间壁厚1+e.Z2c1g.B_电力电缆槽宽+e.Z2c1g.B_水沟宽,T=A.IntsOfLineToCurve(new a.McGePoint3d(F,-e.H_sgdToGb+e.H_ngToGb+3.2+.4,0),new a.McGePoint3d(F-100,-e.H_sgdToGb+e.H_ngToGb+3.2+.4+100*.03,0),d,"MinX"),R=r.AddCircle(T,.4,n.Color.Color_Qtxx),L=r.addLine(new a.McGePoint3d(T.x,T.y-.4,0),new a.McGePoint3d(F,-(e.H_sgdToGb-e.H_ngToGb-4+.8),0),n.Color.Color_Qtxx,"DASHED",.3),f=r.addLine(new a.McGePoint3d(T.x,T.y+.4,0),new a.McGePoint3d(F,-(e.H_sgdToGb-e.H_ngToGb-4),0),n.Color.Color_Qtxx,"DASHED",.3);y.push(R),y.push(L),y.push(f);const G=A.IntsOfLineToCurve(new a.McGePoint3d(I,-e.H_sgdToGb+e.H_ngToGb+3.2+.4,0),new a.McGePoint3d(I+100,-e.H_sgdToGb+e.H_ngToGb+3.2+.4+100*.03,0),d,"MaxX"),O=r.AddCircle(G,.4,n.Color.Color_Qtxx),b=r.addLine(new a.McGePoint3d(G.x,G.y-.4,0),new a.McGePoint3d(I,-(e.H_sgdToGb-e.H_ngToGb-4+.8),0),n.Color.Color_Qtxx,"DASHED",.3),H=r.addLine(new a.McGePoint3d(G.x,G.y+.4,0),new a.McGePoint3d(I,-(e.H_sgdToGb-e.H_ngToGb-4),0),n.Color.Color_Qtxx,"DASHED",.3);y.push(O),y.push(b),y.push(H),n.EntityIds.DicLinIdCol.set("YgTcId",y),v.Erase(t),v.Erase(d)}catch(t){console.log("错误代码:1107",t)}}}class Hn{DrawSg(i){}DrawSg_Pj(i){}DrawSg_Gj(i){}}class jn extends Hn{DrawSg(i){this.DrawZcSg_Sx(i),this.DrawYcSg_Sx(i),this.DrawZxsg_Sx(i)}DrawSg_Pj(i){const n=i.Property,e=i.LinData;try{let t={value:0},o={value:0},s={value:0},d={value:0};n.EntityIds.DicSteelIdCol.set("ZcsgIdcol",Rt.SideGroove2c1g(n.KeyPoint.ptStart左,n.KeyPoint.ptEnd左,n.Color.Color_CqLk,e.H_ngToGb,e.H_sgdToGb,e.Z2c1g,t)),n.EntityIds.DicSteelIdCol.set("YcsgIdcol",Rt.SideGroove2c1g(n.KeyPoint.ptStart右,n.KeyPoint.ptEnd右,n.Color.Color_CqLk,e.H_ngToGb,e.H_sgdToGb,e.Y2c1g,o)),n.EntityIds.DicSteelIdCol.set("ZxsgIdcol",Rt.CenterDitch(n.Color.Color_CqLk,e.RailCenterOffset,-e.dblHeight2,e.dblGradOfInvertFilling,e.Zxsg.zxB侧壁厚,e.Zxsg,s,d))}catch(t){console.log("错误代码 1108",t)}}DrawZcSg_Sx(i){const n=i.Setting,e=i.Property,t=i.LinData;try{const o=e.EntityIds.DicLinIdCol.get("FirstId")[0],s=o.getMcDbEntity();let d={value:0};e.EntityIds.DicLinIdCol.set("ZcsgIdcol",Rt.SideGroove2c1g(e.KeyPoint.ptStart左,e.KeyPoint.ptEnd左,e.Color.Color_Sg,t.H_ngToGb,t.H_sgdToGb,t.Z2c1g,d));let c;n.ChenQi.Cqdm.Spxj?c=A.IntsOfLineToCurve(new a.McGePoint3d(0,e.KeyPoint.ptStart左.y,0),new a.McGePoint3d(1,e.KeyPoint.ptStart左.y,0),o,"MinX"):c=s.getClosestPointTo(e.KeyPoint.ptStart左,!1).val;const l=at.CalSgArea(e.KeyPoint.ptEnd左,c,o,!1);e.AreaLength.AreadOfZcsg=d.value-l}catch(o){console.log("错误代码 1108",o)}}DrawYcSg_Sx(i){i.Data;const n=i.Setting,e=i.Property,t=i.LinData;try{const o=e.EntityIds.DicLinIdCol.get("FirstId")[0],s=o.getMcDbEntity();let d={value:0};e.EntityIds.DicLinIdCol.set("YcsgIdcol",Rt.SideGroove2c1g(e.KeyPoint.ptStart右,e.KeyPoint.ptEnd右,e.Color.Color_Sg,t.H_ngToGb,t.H_sgdToGb,t.Y2c1g,d));let c;n.ChenQi.Cqdm.Spxj?c=A.IntsOfLineToCurve(new a.McGePoint3d(0,e.KeyPoint.ptStart右.y,0),new a.McGePoint3d(1,e.KeyPoint.ptStart右.y,0),o,"MaxX"):c=s.getClosestPointTo(e.KeyPoint.ptStart右,!1).val;const l=at.CalSgArea(c,e.KeyPoint.ptEnd右,o,!0);e.AreaLength.AreaOfYcsg=d.value-l}catch(o){console.log("错误代码 1109",o)}}DrawZxsg_Sx(i){const n=i.Setting,e=i.Property,t=i.LinData;try{let o={value:0},s={value:0};if(n.ChenQi.Cqdm.Zxsg)e.EntityIds.DicLinIdCol.set("ZxsgIdcol",Rt.CenterDitch(e.Color.Color_Sg,t.RailCenterOffset,-t.dblHeight2,t.dblGradOfInvertFilling,t.Zxsg.zxB侧壁厚,t.Zxsg,o,s));else{const d=A.IntsOfLineToCircle5P(t.O_Invert,t.RadiusFirst4,new a.McGePoint3d((n.ChenQi.Sg.Zxsg.A/2+n.ChenQi.Sg.Zxsg.B+t.RailCenterOffset)/10,0,0),new a.McGePoint3d((n.ChenQi.Sg.Zxsg.A/2+n.ChenQi.Sg.Zxsg.B+t.RailCenterOffset)/10,1,0),"MinY"),c=A.IntsOfLineToCircle5P(t.O_Invert,t.RadiusFirst4,new a.McGePoint3d((-n.ChenQi.Sg.Zxsg.A/2-n.ChenQi.Sg.Zxsg.B+t.RailCenterOffset)/10,0,0),new a.McGePoint3d((-n.ChenQi.Sg.Zxsg.A/2-n.ChenQi.Sg.Zxsg.B+t.RailCenterOffset)/10,1,0),"MinY");e.EntityIds.DicLinIdCol.set("ZxsgIdcol",Rt.CenterConduit(e.Color.Color_Sg,t.RailCenterOffset,-t.dblHeight2,t.dblGradOfInvertFilling,t.Zxsg.zxB侧壁厚,t.Zxsg,o,s))}e.AreaLength.AreaOfZxsg=o.value,e.AreaLength.AreaOfZxsg外包框=s.value}catch(o){console.log("错误代码 1110",o)}}}let Uo=class extends ze{DrawLining(i,n){const e=i.Setting,t=i.Property;new _t().DrawCq(i,t.EntityIds.DicLinIdCol,t.Color.Color_Jg),new _t().DrawCqzf(i,t.EntityIds.DicLinIdCol,t.Color.Color_Jg),e.ChenQi.Tssz.YlbxMode===re.DrawAndCalculate&&new _t().DrawYlbx(i),new jn().DrawSg(i),new Ln().DrawMg_Gq(i),new Vt().DrawTc_Sx(i,t.EntityIds.DicLinIdCol,t.Color.Color_Sg),new Ee().DrawSgf(i),new mn().DrawAccessStep(i),new On().DrawHxmg(i),new Jo().Dimensioning(i,n),new Fe().Note_Sx(i),new Xo().DrawTb(i,n),new Te().DrawFzx_Sx(i,!1),new Ve().DrawTk(i,3)}DrawLiningPartial(i,n){const e=i.Property;new _t().DrawCq(i,e.EntityIds.DicLinIdCol,e.Color.Color_Jg),new _t().DrawCqzf(i,e.EntityIds.DicLinIdCol,e.Color.Color_Jg),new Ln().DrawMg_Gq(i),new Te().DrawFzx_Sx(i,!1)}DrawSteelDrawingLining(i,n){const e=i.Property;new _t().DrawCq(i,e.EntityIds.DicSteelIdCol,e.Color.Color_CqLk),new Vt().DrawTc_Sx(i,e.EntityIds.DicSteelIdCol,e.Color.Color_CqLk)}DrawFramDrawingLining(i){const n=i.Property;new _t().DrawCq(i,n.EntityIds.DicFramId,n.Color.Color_CqLk),new _t().DrawCqzf(i,n.EntityIds.DicFramId,n.Color.Color_CqLk)}};class Nn{Execute(i){}DrawVerticalBarDetail(i){const n=i.Setting,e=i.Property,t=i.SteelData;try{let o="N[3]!"+t.DiameterN5.toFixed(0)+" l=1000";n.PeiJin.IsN5_HRB400&&(o="N[3]"+t.SteelChar+t.DiameterN5.toFixed(0)+" l=1000");const s=r.PolarPoint(e.FrameCoords.Pj.ptDetail_VerticalBarLeft,0,35),d=r.PolarPoint(r.MidPoint(e.FrameCoords.Pj.ptDetail_VerticalBarLeft,s),Math.PI/2,3);r.addLine3P(e.FrameCoords.Pj.ptDetail_VerticalBarLeft,s,3),r.addText(d,o,e.TextHeight.Height_Ht,0,.7,0,a.McDb.TextHorzMode.kTextCenter,a.McDb.TextVertMode.kTextVertMid)}catch(o){console.log("错误代码 103","提示")}}DrawDetai_SameThick_Arch(i){const n=i.Property,e=i.LinData,t=i.SteelData;try{const o="N[4]!"+t.DiameterN678.toFixed(0)+" l="+((e.d1-(t.TProtectiveCover_W+t.TProtectiveCover_N)/100)*100+2*t.Len_HookedBar1_拱墙*t.DiameterN678).toFixed(0),s=((e.d1-(t.TProtectiveCover_W+t.TProtectiveCover_N)/100)*100).toFixed(0);E.SteelHooked(n.FrameCoords.Pj.ptDetail_SameThick_Arch,s,o)}catch(o){console.log("错误代码 2211","提示")}}DrawStraightHookDetail(i){const n=i.Setting,e=i.Property;try{E.Steel直弯钩大样(e.FrameCoords.Pj.ptDetail_StraightHookRightDown,n.PeiJin.IsZjcyHRB400),m.Heading(new a.McGePoint3d(e.FrameCoords.Pj.ptDetail_StraightHookRightDown.x-45,e.FrameCoords.Pj.ptDetail_StraightHookRightDown.y-15,0),"钢筋直角弯钩大样图","示意")}catch(t){console.log("错误代码 2213","提示")}}DrawHookBarDetailTitle(i){}DrawDetail_DiffThick_Wall(i){}DrawDetail_DiffThick_Invert(i){}DrawDetail_SameThick_Invert(i){}DrawSemicircularHookDetail(i){}}class vn extends Nn{Execute(i){const n=i.Setting;i.Property;const e=i.LinData;super.DrawVerticalBarDetail(i),super.DrawDetai_SameThick_Arch(i),this.DrawDetail_DiffThick_Wall(i),e.d2!==e.d1&&(this.DrawDetail_DiffThick_Invert(i),this.DrawDetail_SameThick_Invert(i)),this.DrawHookBarDetailTitle(i),this.DrawSemicircularHookDetail(i),n.PeiJin.IsZwg&&super.DrawStraightHookDetail(i)}DrawDetail_DiffThick_Invert(i){const n=i.Property,e=i.LinData,t=i.SteelData;try{const o="N[5]!"+t.DiameterN678.toFixed(0)+" l="+((e.d1-(t.TProtectiveCover_W+t.TProtectiveCover_N)/100)*100+2*t.Len_HookedBar1_拱墙*t.DiameterN678).toFixed(0)+"~"+((e.d2-(t.TProtectiveCover_W+t.TProtectiveCover_N)/100)*100+2*t.Len_HookedBar1_拱墙*t.DiameterN678).toFixed(0),s=((e.d1-(t.TProtectiveCover_W+t.TProtectiveCover_N)/100)*100).toFixed(0)+"~"+((e.d2-(t.TProtectiveCover_W+t.TProtectiveCover_N)/100)*100).toFixed(0);E.SteelHooked(n.FrameCoords.Pj.ptDetail_DiffThick_Invert,s,o)}catch(o){console.log("错误代码 2212","提示")}}DrawDetail_SameThick_Invert(i){const n=i.Property,e=i.LinData,t=i.SteelData;try{const o="N[6]!"+t.DiameterN678.toFixed(0)+" l="+((e.d2-(t.TProtectiveCover_W+t.TProtectiveCover_N)/100)*100+2*t.Len_HookedBar1_拱墙*t.DiameterN678).toFixed(0),s=((e.d2-(t.TProtectiveCover_W+t.TProtectiveCover_N)/100)*100).toFixed(0);E.SteelHooked(n.FrameCoords.Pj.ptDetail_SameThick_Invert,s,o)}catch(o){console.log("错误代码 2213","提示")}}DrawHookBarDetailTitle(i){const n=i.Property,e=i.LinData;try{e.d2===e.d1?m.Heading1(n.FrameCoords.Pj.ptDetail_HookBarTitleTopMid,"N[3]、N[4]钢筋大样图","示意"):m.Heading1(n.FrameCoords.Pj.ptDetail_HookBarTitleTopMid,"N[3]~N[6]钢筋大样图","示意")}catch(t){console.log("错误代码 2213","提示")}}DrawSemicircularHookDetail(i){const n=i.Setting,e=i.Property,t=i.LinData,o=i.SteelData;try{let s="";o.DiameterN12===o.DiameterN34?(s="N[4]、N[5]、N[6]钢筋: 两端R="+o.R_HookedBar1_拱墙.toFixed(1)+"d l'="+o.Len_HookedBar1_拱墙.toFixed(3)+"d",t.d1===t.d2&&(s="N[4]钢筋: 两端R="+o.R_HookedBar1_拱墙.toFixed(1)+"d l'="+o.Len_HookedBar1_拱墙.toFixed(3)+"d")):s="N[4]钢筋: 两端R="+o.R_HookedBar3_仰拱.toFixed(1)+"d l'="+o.Len_HookedBar3_仰拱.toFixed(3)+"d";const d=" "+s;E.Steel半圆弯钩大样(e.FrameCoords.Pj.ptDetail_SemiHookRightDown,d,!1,n.PeiJin.IsAntiSeismic),m.Heading(new a.McGePoint3d(e.FrameCoords.Pj.ptDetail_SemiHookRightDown.x-45,e.FrameCoords.Pj.ptDetail_SemiHookRightDown.y-30,0),"钢筋半圆弯钩大样图","示意")}catch(s){console.log("错误代码 2213","提示")}}}class Je{SteelDraw(i,n){}}class qn{Execute(i){const n=i.LinData;n.d1!==n.d2?(this.DrawI_I(i),this.DrawII_II(i),this.DrawIII_III(i)):this.DrawI_I_0(i)}DrawIII_III(i){const n=i.Property,e=i.LinData,t=i.SteelData;try{const o="N[3]"+t.N5SteelChar+t.DiameterN5.toFixed(0),s="N[6]!"+t.DiameterN678.toFixed(0),d="N[1]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),c="N[2]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),l=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_W).toFixed(0),_=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_N).toFixed(0),h=(e.d2*100).toFixed(0),P=(e.d2*100-(t.DiameterN12+2*t.DiameterN678+t.TProtectiveCover_W+t.TProtectiveCover_N)).toFixed(0);E.DjPjpm(n.FrameCoords.Pj["ptPm_TopLeftⅢ_Ⅲ"],4.5,1.7,l,_,h,P,o,s,d,c,"Ⅲ-Ⅲ 断面","示意",3.5)}catch(o){console.log("错误代码 2104","提示")}}DrawII_II(i){const n=i.Property,e=i.LinData,t=i.SteelData;try{const o="N[3]"+t.N5SteelChar+t.DiameterN5.toFixed(0),s="N[5]!"+t.DiameterN678.toFixed(0),d="N[1]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),c="N[2]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),l=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_W).toFixed(0),_=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_N).toFixed(0);let h,P;e.d1===e.d2?(h=(e.d1*100).toFixed(0),P=(e.d1*100-(t.DiameterN12+2*t.DiameterN678+t.TProtectiveCover_W+t.TProtectiveCover_N)).toFixed(0)):(h=(e.d1*100).toFixed(0)+"~"+(e.d2*100).toFixed(0),P=(e.d1*100-(t.DiameterN12+2*t.DiameterN678+t.TProtectiveCover_W+t.TProtectiveCover_N)).toFixed(0)+"~"+(e.d2*100-(t.DiameterN12+2*t.DiameterN678+t.TProtectiveCover_W+t.TProtectiveCover_N)).toFixed(0)),E.DjPjpm(n.FrameCoords.Pj["ptPm_TopLeftⅡ_Ⅱ"],4.5,1.7,l,_,h,P,o,s,d,c,"Ⅱ-Ⅱ 断面","示意",3.5)}catch(o){console.log("错误代码 2105","提示")}}DrawI_I(i){const n=i.Property,e=i.LinData,t=i.SteelData;try{const o="N[3]"+t.N5SteelChar+t.DiameterN5.toFixed(0),s="N[4]!"+t.DiameterN678.toFixed(0),d="N[1]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),c="N[2]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),l=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_W).toFixed(0),_=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_N).toFixed(0),h=(e.d1*100).toFixed(0),P=(e.d1*100-(t.DiameterN12+2*t.DiameterN678+t.TProtectiveCover_W+t.TProtectiveCover_N)).toFixed(0);E.DjPjpm(n.FrameCoords.Pj["ptPm_TopLeftⅠ_Ⅰ"],4.5,1.7,l,_,h,P,o,s,d,c,"Ⅰ-Ⅰ 断面","示意",3.5)}catch(o){console.log("错误代码 2106","提示")}}DrawI_I_0(i){const n=i.Property,e=i.LinData,t=i.SteelData;try{const o="N[3]!"+t.DiameterN5.toFixed(0),s="N[4]!"+t.DiameterN678.toFixed(0),d="N[1]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),c="N[2]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),l=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_W).toFixed(0),_=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_N).toFixed(0),h=(e.d2*100).toFixed(0),P=(e.d2*100-(t.DiameterN12+2*t.DiameterN678+t.TProtectiveCover_W+t.TProtectiveCover_N)).toFixed(0);E.DjPjpm(n.FrameCoords.Pj["ptPm_TopLeftⅠ_Ⅰ_0"],4.5,1.7,l,_,h,P,o,s,d,c,"Ⅰ-Ⅰ 断面","示意",3.5)}catch(o){console.log("错误代码 2104","提示")}}}class Qe{MoveDraw_Sx(i){const n=i.Property;try{for(const e of n.EntityIds.DicSteelIdCol.values())for(const t of e)v.move(t,a.McGePoint3d.kOrigin,n.FrameCoords.Pj.ptDmOriginTarget);for(const e of n.EntityIds.DicIdCol_MainBarDetail.values())for(const t of e)v.move(t,a.McGePoint3d.kOrigin,n.FrameCoords.Pj.ptDetail_MainBarOriginTarget)}catch(e){console.log("错误代码:6101","提示")}}MoveDraw_Dx(i){const n=i.Property;try{for(const e of n.EntityIds.DicSteelIdCol.values())for(const t of e)v.move(t,a.McGePoint3d.kOrigin,n.FrameCoords.Pj.ptDmOriginTarget);for(const e of n.EntityIds.DicIdCol_MainBarDetail.values())for(const t of e)v.move(t,a.McGePoint3d.kOrigin,n.FrameCoords.Pj.ptDetail_MainBarOriginTarget)}catch(e){console.log("错误代码:6101","提示")}}}class Ke{DrawSteelLk(i){const n=i.Property;try{const e=[],t=[];e.push(r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelFirst),0,n.Color.Color_Jg,!0,!0)),t.push(r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelSecond),0,n.Color.Color_Jg,!0,!0)),n.EntityIds.DicSteelIdCol.set("SteelFirstId",e),n.EntityIds.DicSteelIdCol.set("SteelSecondId",t)}catch(e){console.log("错误代码 2101 ","提示")}}}class ce{Note1(i){const n=i.Data,e=i.Property,t=i.SteelData;try{const o=`说明:
|
|
28
|
+
1、本图尺寸除注明者外,其余均以毫米计。`,s=`
|
|
29
|
+
2、本图适用于`+n.Cq.Sydl.Dl+',配合"'+n.Cq.Cqtk.Th+'"图使用。';let d=`
|
|
30
|
+
3、本图钢筋净保护层厚度为`+t.TProtectiveCover_W.toFixed(0)+"mm。";t.TProtectiveCover_N!==t.TProtectiveCover_W&&(d=`
|
|
31
|
+
3、本图靠初期支护侧钢筋净保护层厚度为`+t.TProtectiveCover_W.toFixed(0)+"mm,靠衬砌内侧钢筋净保护层厚度为"+t.TProtectiveCover_N.toFixed(0)+"mm。");const c=`
|
|
32
|
+
4、符号"$"代表HRB400,"!"代表HPB300钢筋。箍筋采用半圆弯钩。`,l=`
|
|
33
|
+
5、本图钢筋尺寸标注均到钢筋中心。`,_=`
|
|
34
|
+
6、N[1]、N[2]钢筋数量计算中按9m分段考虑机械连接,施工中根据实际情况分段,相邻连接位置应相互错开,同一区段内钢筋接头面积不大于全部钢筋面积的50%,且连接位置不得位于拱顶。`,h=`
|
|
35
|
+
6、图中未详尽处见"`+n.Pj.Pjtk.Th2+'"图。',P=o+s+d+c+l+_+h;r.AddMtext(e.FrameCoords.Pj.ptNote_TopLeft1,P,4.5,135)}catch(o){console.log("错误代码 2301","提示")}}Note2(i){const n=i.Data,e=i.Property,t=i.LinData;try{const o=`说明:
|
|
36
|
+
1、本图尺寸除注明者外,其余均以毫米计,表格中单位除注明外以米计。`,s=`
|
|
37
|
+
2、本图配合"`+n.Pj.Pjtk.Th1+'"图使用。';let d;t.d1===t.d2?d=`
|
|
38
|
+
3、N[4]钢筋采用半圆弯钩,其余钢筋无弯钩。`:d=`
|
|
39
|
+
3、N[4]、N[5]、N[6]钢筋采用半圆弯钩,其余钢筋无弯钩。`;const c=`
|
|
40
|
+
4、本图钢筋尺寸标注除弯钩到钢筋边缘外,其余均到钢筋中心。`,l=`
|
|
41
|
+
5、钢筋数量未计钢筋的搭接及损耗,连接数量计算按9m分段考虑机械连接。施工中根据实际情况分段,相邻连接位置应相互错开,同一区段内钢筋接头面积不大于全部钢筋面积的50%,且连接位置不得位于拱顶。`,_=`
|
|
42
|
+
6、图中未详尽处见有关规范、规定及设计图。`,h=o+s+d+c+l+_;r.AddMtext(e.FrameCoords.Pj.ptNote_TopLeft2,h,4.5,150)}catch(o){console.log("错误代码 2302","提示")}}}class Bn{DrawSteelSizeTable(i){const n=i.Property;i.LinData;const e=i.SteelData,t=[];try{const o=n.FrameCoords.Pj.ptTable_DmccTopMid,s=this.PrepareCellTexts(ot.Sx160to350,e.dmSizes),d=new a.McDbXlsxTable;tt.SetTableCellsStyle(d,null,i),this.FillTableString(d,s),d.colWidth=15,d.rowHeight=6,d.position=new a.McGePoint3d(o.x-d.colWidth/2,o.y,0),t.push(r.AppendEntity(d)),m.Heading1(new a.McGePoint3d(o.x,o.y+5,0),"钢筋尺寸表","")}catch(o){console.log("绘制 工程数量表 错误")}}PrepareCellTexts(i,n){let e=[];switch(i){case ot.Sx160to350:e=[tt.GetSteelSizeRowData(n,"断面加宽W",t=>(t.W*100).toFixed(0)),tt.GetSteelSizeRowData(n,"r1'",t=>(t.radius_In_Arch*100).toFixed(0)),tt.GetSteelSizeRowData(n,"R1'",t=>(t.radius_Out_Arch*100).toFixed(0)),tt.GetSteelSizeRowData(n,"r4'",t=>(t.radius_In_Invert*100).toFixed(0)),tt.GetSteelSizeRowData(n,"R4'",t=>(t.radius_Out_Invert*100).toFixed(0)),tt.GetSteelSizeRowData(n,"L[1]'",t=>(t.length_Out_Arch*100).toFixed(0)),tt.GetSteelSizeRowData(n,"l[1]'",t=>(t.length_In_Arch*100).toFixed(0)),tt.GetSteelSizeRowData(n,"L[4]'",t=>(t.length_Out_Invert*100).toFixed(0)),tt.GetSteelSizeRowData(n,"l[4]'",t=>(t.length_In_Invert*100).toFixed(0))];break;case ot.Fzkd:break}return e}FillTableString(i,n){i.setFromArray(n)}}class Xe{DrawTk(i,n){const e=i.Data,t=i.Setting,o=i.Property;try{let s=e.Cq.Cqtk.Th,d=e.Cq.Cqtk.Th;t.ChenQi.Cqdm.IsThbt&&(s+="-01",d+="-02"),n>=1&&Jt.A3Frame3(o.FrameCoords.Pj.ptBase1,e.Cq.Cqtk.Dtm,e.Pj.Pjtk.Tm1,e.Pj.Pjtk.Th1,"1:"+t.ChenQi.Cqdm.Sc.toString(),e.Cq.Cqtk.Htrq,1,!0),n>=2&&Jt.A3Frame3(o.FrameCoords.Pj.ptBase2,e.Cq.Cqtk.Dtm,e.Pj.Pjtk.Tm2,e.Pj.Pjtk.Th2,"1:"+t.ChenQi.Cqdm.Sc.toString(),e.Cq.Cqtk.Htrq,1,!0),n>=3&&Jt.A3Frame3(o.FrameCoords.Pj.ptBase3,e.Cq.Cqtk.Dtm,e.Pj.Pjtk.Tm2,e.Pj.Pjtk.Th2,"1:"+t.ChenQi.Cqdm.Sc.toString(),e.Cq.Cqtk.Htrq,1,!0)}catch(s){console.log("错误代码 1111")}}}class Ue{DrawFzx_Sx(i,n){const e=i.Property,t=i.LinData,o=[];let d=a.MxCpp.getCurrentMxCAD().getSysVarDouble("LTSCALE");const c=.5/d;try{const l=-(t.Dms[t.w].H_ngToFirstInvertBottom+t.d1+t.m1+3),_=t.Dms[t.w].H_ngToArchCenter+t.RadiusFirst1+t.d1+t.m1+3,h=t.a/Math.tan(t.Radian_Arch1);o.push(r.addLine3P(new a.McGePoint3d(-t.b1_z,0,0),new a.McGePoint3d(t.b1_y,0,0),e.Color.Color_Fzx)),o.push(dt.addTriangle(new a.McGePoint3d(-t.b1_z+t.RailCenterOffset+t.d/2,0,0),2)),o.push(r.addText6P(new a.McGePoint3d(2-t.b1_z+t.d/2+t.RailCenterOffset,0,0),"内轨顶面",e.TextHeight.Height_Ht,0,.7,0)),o.push(r.addLine(new a.McGePoint3d(-t.b1_z+t.d/2,-t.H_ngToBqpt,0),new a.McGePoint3d(-t.b1_z+t.d/2,t.O2_y.y+50,0),e.Color.Color_Fzx,"CENTER",c)),o.push(r.addMtext(new a.McGePoint3d(-t.b1_z+t.d/2-3,t.O2_y.y+20,0),"左线线路中线",e.TextHeight.Height_Ht,.8,1)),o.push(r.addLine(new a.McGePoint3d(0,_,0),new a.McGePoint3d(0,l,0),e.Color.Color_Fzx,"CENTER",c)),o.push(r.addText4(new a.McGePoint3d(-3,t.O2_y.y+20,0),"断面中线",e.TextHeight.Height_Ht,.8)),t.RailCenterOffset!==0&&(o.push(r.addLine(new a.McGePoint3d(t.RailCenterOffset,_,0),new a.McGePoint3d(t.RailCenterOffset,l,0),e.Color.Color_Fzx,"CENTER",c)),t.RailCenterOffset>0?o.push(r.addMtext(new a.McGePoint3d(t.RailCenterOffset+1,t.O2_y.y+20,0),"隧道中线",e.TextHeight.Height_Ht,.8,1)):o.push(r.addMtext(new a.McGePoint3d(t.RailCenterOffset-3,t.O2_y.y+20,0),"隧道中线",e.TextHeight.Height_Ht,.8,1))),o.push(r.addLine(new a.McGePoint3d(t.b1_y-t.d/2,-t.H_ngToBqpt,0),new a.McGePoint3d(t.b1_y-t.d/2,t.O2_y.y+50,0),e.Color.Color_Fzx,"CENTER",.5/d)),o.push(r.addMtext(new a.McGePoint3d(t.b1_y-t.d/2+1,t.O2_y.y+20,0),"右线线路中线",e.TextHeight.Height_Ht,.8,1)),n.set("DmbzFzx",o)}catch(l){console.log("错误代码 2106","提示")}}DrawFzx_Dx(i,n){const e=i.Property,t=i.LinData,o=[];try{debugger;let d=a.MxCpp.getCurrentMxCAD().getSysVarDouble("LTSCALE");const c=-(t.Dms[t.w].H_ngToFirstInvertBottom+t.d1+t.m2+3),l=t.O1.y+t.RadiusFirst1+t.d1+t.m1+2,_=Math.max(t.b1_y,t.b1_z);o.push(r.addLine3P(new a.McGePoint3d(-_,0,0),new a.McGePoint3d(_,0,0),e.Color.Color_Fzx)),o.push(r.addText7P(new a.McGePoint3d(2,0,0),"内轨顶面",e.TextHeight.Height_Ht,0,.7,0,e.Color.Color_Fzx)),o.push(dt.AddTriangle3P(a.McGePoint3d.kOrigin,2,e.Color.Color_Fzx)),o.push(r.addLine(new a.McGePoint3d(0,l,0),new a.McGePoint3d(0,c,0),e.Color.Color_Fzx,"CENTER",d)),o.push(r.addMtext(new a.McGePoint3d(-3,t.O2_y.y+t.RadiusFirst1*2/3,0),"断面中线",e.TextHeight.Height_Ht,.8,1)),n.set("N12Fzx",o)}catch(s){console.log("错误代码 2207","提示")}}}class $e{Execute(i){this.DrawLk(i),this.DimLine_MainBar(i),this.DimRadius_MainBar(i),this.DimCenter_MainBar(i),this.DimAngle_MainBar(i),this.DrawN12Fzx(i),this.MarkMainDetailBz(i),this.DrawMainDetailTitle(i)}DrawLk(i){i.Data,i.Setting;const n=i.Property;try{const e=[],t=[];e.push(r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelFirst),0,n.Color.Color_Jg,!0,!0)),t.push(r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelSecond),0,n.Color.Color_Jg,!0,!0)),n.EntityIds.DicIdCol_MainBarDetail.set("SteelFirstId",e),n.EntityIds.DicIdCol_MainBarDetail.set("SteelSecondId",t)}catch(e){console.log("错误代码 2203","提示")}}DrawMainDetailTitle(i){const n=i.Property,e=[];try{m.Heading1(n.FrameCoords.Pj.ptDetail_MainBarTitleTopMid,"N[1]~N[2]钢筋大样图","1:100"),n.EntityIds.DicIdCol_MainBarDetail.set("DrawBt",e)}catch(t){console.log("错误代码 2208","提示")}}DimLine_MainBar(i){}DimRadius_MainBar(i){}DimCenter_MainBar(i){}DimAngle_MainBar(i){}DrawN12Fzx(i){const n=i.Property;new Ue().DrawFzx_Dx(i,n.EntityIds.DicIdCol_MainBarDetail)}MarkMainDetailBz(i){const n=i.Property,e=i.LinData,t=i.SteelData,o=[];try{const s="N[2]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(100*t.SpacingN1234).toFixed(0),d="N[1]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(100*t.SpacingN1234).toFixed(0),c=r.PolarPoint(e.O1,Math.PI*3/4,t.RadiusFirstSteel1);m.JoinIdCol(o,rt.LeaderAndText(c,Math.PI*7/4,10,0,s,n.TextHeight.Height_Ht));const l=r.PolarPoint(e.O1,Math.PI*2.9/4,t.RadiusSecondSteel1);m.JoinIdCol(o,rt.LeaderAndText(l,Math.PI*3/4,10,Math.PI,d,n.TextHeight.Height_Ht)),n.EntityIds.DicIdCol_MainBarDetail.set("MarkMainDetailBz",o)}catch(s){console.log("错误代码 2201","提示")}}}let $o=class extends $e{DimRadius_MainBar(i){const n=i.Property,e=i.LinData,t=i.SteelData,o=[],s=1;try{const d=n.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Y2"),c=n.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Y3"),l=n.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Y4"),_=n.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Y5"),h=n.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Z5"),P=n.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Z4"),u=n.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Z3"),p=n.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Z2"),M=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y2"),g=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y3"),C=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y4"),y=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y5"),F=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z5"),I=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z4"),T=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z3"),R=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z2"),L=r.PolarPoint(e.O_Invert,275/180*Math.PI,t.RadiusFirstSteel4),f=r.PolarPoint(e.O_Invert,275/180*Math.PI,t.RadiusFirstSteel4-13),G=r.GetDipAngle(e.O2_y,_),O=r.GetDipAngle(h,e.O2_z),b=r.GetDipAngle(l,e.O3_y),H=r.GetDipAngle(R,e.O4_2_z),x=r.GetDipAngle(e.O4_2_y,M),j=r.GetDipAngle(e.O4_1_y,C),N=r.GetDipAngle(p,e.O_Invert),k=r.GetDipAngle(u,e.O4_1_z);o.push(r.AddLeader2P(_,e.O2_y)),o.push(r.AddLeader2P(y,e.O1)),o.push(r.addText(r.PolarPoint(r.PolarPoint(_,G,-10),G+Math.PI/2,1),"r[1]'",n.TextHeight.Height_Ht,0,.7,G,a.McDb.TextHorzMode.kTextRight,a.McDb.TextVertMode.kTextBottom)),o.push(r.addText(r.PolarPoint(r.PolarPoint(_,G,-10),G+Math.PI/2,-4.5),"R[1]'",n.TextHeight.Height_Ht,0,.7,G,a.McDb.TextHorzMode.kTextRight,a.McDb.TextVertMode.kTextBottom)),o.push(r.AddLeader2P(l,e.O3_y)),o.push(r.AddLeader2P(C,e.O3_y)),o.push(r.AddLeader2P(h,e.O2_z)),o.push(r.AddLeader2P(F,e.O1)),o.push(r.AddLeader2P(I,e.O2_z)),o.push(r.AddLeader2P(P,e.O2_z)),o.push(r.AddLeader2P(d,e.O_Invert)),o.push(r.AddLeader2P(M,e.O4_2_y)),o.push(r.AddLeader2P(p,e.O_Invert)),o.push(r.AddLeader2P(R,e.O4_2_z)),o.push(r.AddLeader2P(u,e.O4_1_z)),o.push(r.AddLeader2P(c,e.O4_1_y)),o.push(r.addLine(e.O4_1_z,e.O3_z,7,"DASHED",.3/s)),o.push(r.addLine(e.O4_1_y,e.O3_y,7,"DASHED",.3/s)),o.push(r.addLine(e.O2_z,e.O3_z,7,"DASHED",.3/s)),o.push(r.addLine(e.O2_y,e.O3_y,7,"DASHED",.3/s)),o.push(r.addText(r.PolarPoint(r.PolarPoint(l,b,8),b+Math.PI/2,1),"r[3]'="+(100*t.RadiusFirstSteel3).toFixed(0),n.TextHeight.Height_Ht,0,.7,Math.PI+b,a.McDb.TextHorzMode.kTextRight,a.McDb.TextVertMode.kTextTop)),o.push(r.addText(r.PolarPoint(r.PolarPoint(l,b,8),b+Math.PI/2,-4.5),"R[3]'="+(100*t.RadiusSecondSteel3).toFixed(0),n.TextHeight.Height_Ht,0,.7,Math.PI+b,a.McDb.TextHorzMode.kTextRight,a.McDb.TextVertMode.kTextTop)),o.push(r.addText6P(r.PolarPoint(r.PolarPoint(p,N,8),N+Math.PI/2,1),"r[4]'",n.TextHeight.Height_Ht,0,.7,N)),o.push(r.addText6P(r.PolarPoint(r.PolarPoint(p,N,8),N+Math.PI/2,-4.5),"R[4]'",n.TextHeight.Height_Ht,0,.7,N)),o.push(r.addText6P(r.PolarPoint(r.PolarPoint(h,O,8),O+Math.PI/2,1),"r[2]'="+(100*t.RadiusFirstSteel2).toFixed(0),n.TextHeight.Height_Ht,0,.7,O)),o.push(r.addText6P(r.PolarPoint(r.PolarPoint(h,O,8),O+Math.PI/2,-4.5),"R[2]'="+(100*t.RadiusSecondSteel2).toFixed(0),n.TextHeight.Height_Ht,0,.7,O)),n.EntityIds.DicIdCol_MainBarDetail.set("DimN12Radius",o)}catch(d){console.log("错误代码 1204")}}DimCenter_MainBar(i){const n=i.Property,e=i.LinData;try{const t=[];m.JoinIdCol(t,m.CenterPoint4P(e.O1,e.O1,"O[1]",n.TextHeight.Height_Ht)),m.JoinIdCol(t,m.CenterPoint4P(e.O2_y,new a.McGePoint3d(e.O2_y.x-4,e.O2_y.y,0),"O[2]",n.TextHeight.Height_Ht)),m.JoinIdCol(t,m.CenterPoint4P(e.O2_z,new a.McGePoint3d(e.O2_z.x+1,e.O2_z.y,0),"O[2]",n.TextHeight.Height_Ht)),m.JoinIdCol(t,m.CenterPoint4P(e.O3_y,new a.McGePoint3d(e.O3_y.x-4,e.O3_y.y,0),"O[3]",n.TextHeight.Height_Ht)),m.JoinIdCol(t,m.CenterPoint4P(e.O3_z,new a.McGePoint3d(e.O3_z.x+1,e.O3_z.y,0),"O[3]",n.TextHeight.Height_Ht)),m.JoinIdCol(t,m.CenterPoint4P(e.O4_1_y,new a.McGePoint3d(e.O4_2_y.x+3,e.O4_2_y.y-n.TextHeight.Height_Ht/2,0),"O[4]",n.TextHeight.Height_Ht)),m.JoinIdCol(t,m.CenterPoint4P(e.O4_1_z,new a.McGePoint3d(e.O4_1_z.x-3,e.O4_1_z.y,0),"O[4]",n.TextHeight.Height_Ht)),m.JoinIdCol(t,m.CenterPoint4P(e.O_Invert,e.O_Invert,"O[5]",n.TextHeight.Height_Ht)),e.d1!=e.d2&&(m.JoinIdCol(t,m.CenterPoint4P(e.O4_2_y,new a.McGePoint3d(e.O4_2_y.x-4,e.O4_2_y.y,0),"O[4]'",n.TextHeight.Height_Ht)),m.JoinIdCol(t,m.CenterPoint4P(e.O4_2_z,new a.McGePoint3d(e.O4_2_z.x+1,e.O4_2_z.y,0),"O[4]'",n.TextHeight.Height_Ht))),n.EntityIds.DicIdCol_MainBarDetail.set("DimCenter",t)}catch(t){console.log("错误代码 1204")}}DimAngle_MainBar(i){const n=i.Property,e=i.LinData,t=[];try{let o=0,s=0;e.RadiusFirst2<e.RadiusFirst1?(s=20,o=s+Math.abs(e.RadiusFirst1-e.RadiusFirst2)):(o=20,s=o+Math.abs(e.RadiusFirst1-e.RadiusFirst2));const d=s+e.RadiusFirst3-e.RadiusFirst2,c=new a.McGePoint3d(0,0,0),l=r.PolarPoint(e.O3_z,Math.PI,e.RadiusFourth3),_=r.PolarPoint(e.O3_y,0,e.RadiusFourth3),h=r.PolarPoint(e.O3_z,Math.PI,e.RadiusFirst3),P=r.PolarPoint(e.O3_y,0,e.RadiusFirst3),u=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFourth5),p=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusSecond5),M=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFirst5),g=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFirst1),C=r.PolarPoint(e.O1,Math.PI/2,e.RadiusSecond1),y=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFourth1),F=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y2"),I=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y3"),T=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y4"),R=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y5"),L=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z5"),f=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),G=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z3"),O=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),b=n.ContourPoints.Cq.DicSecond.get("ptSecond_Y2");t.push(r.add3PLineAngular(e.O1,g,L,o,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O1,g,R,o,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O2_z,L,f,s,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O3_z,G,f,d,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O_Invert,F,O,e.RadiusFirst5/3,a.McGePoint3d.kOrigin,"",!0));const H=r.PolarPoint(r.PolarPoint(e.O4_2_y,-e.Radian_Widest_inDown-e.Radian_NearSgArc外/2,e.RadiusFirst4/2),Math.PI/2,30);t.push(r.add3PLineAngular(e.O4_2_y,I,b,e.RadiusFirst4/3,H,"",!0));const x=r.PolarPoint(r.PolarPoint(e.O4_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusFirst4/2),Math.PI/2,30);t.push(r.add3PLineAngular(e.O4_1_z,G,O,e.RadiusFirst4/3,x,"",!0)),n.EntityIds.DicIdCol_MainBarDetail.set("DimAngle",t)}catch(o){console.log("错误代码 1202")}}DimLine_MainBar(i){const n=i.Setting,e=i.Property,t=[];try{const o=e.EntityIds.DicIdCol_MainBarDetail.get("SteelSecondId")[0],s=o.getMcDbEntity(),d=e.EntityIds.DicIdCol_MainBarDetail.get("SteelFirstId")[0],c=o.getMcDbEntity(),l=new Map,_=new Map;n.ChenQi.Cqdm.MarkCur||(l.set(s.numVerts.length/2,"L[1]"),l.set(s.numVerts.length-1,"L[5]"),_.set(c.numVerts.length/2,"l[1]"),_.set(c.numVerts.length-1,"l[5]")),m.JoinIdCol(t,rt.DimPlineLength(s,5,100,l,[],!0)),m.JoinIdCol(t,rt.DimPlineLength(c,-5,100,_,[],!0)),e.EntityIds.DicIdCol_MainBarDetail.set("DimLine_12",t)}catch(o){console.log("错误代码 2206")}}};class kn{Execute(i){console.log("SteelRebarLayoutGrandpa.Execute"),this.DrawSteelLk(i),this.DrawSteelHookBarArch(i),this.DrawSteelHookBarInvert(i),this.DrawRebarLabel(i),this.DrawMark(i),this.DrawSectionView(i),this.PlaceSectionMark(i),this.DrawTitle(i),this.DrawSectionFzx(i)}DrawSteelLk(i){console.log("DrawSteelLk")}DrawSteelHookBarArch(i){console.log("DrawSteelHookBarArch")}DrawSteelHookBarInvert(i){console.log("DrawSteelHookBarInvert")}DrawRebarLabel(i){console.log("DrawRebarLabel")}DrawMark(i){console.log("DrawMark")}DrawTitle(i){console.log("DrawTitle")}DrawSectionView(i){console.log("DrawSectionView")}PlaceSectionMark(i){console.log("PlaceSectionMark")}DrawSectionFzx(i){console.log("DrawSectionFzx")}}class zn extends kn{DrawSteelHookBarArch(i){console.log("DrawSteelHookBarArch","SteelRebarLayoutFather_Sx");const n=i.Property,e=i.LinData,t=[],o=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelFirst),0,5,!0,!0),s=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelSecond),0,5,!0,!0),d=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelCenter),0,5,!0,!0),c=o.getMcDbEntity(),l=s.getMcDbEntity(),_=d.getMcDbEntity(),h=_.getDistAtPoint(_.getClosestPointTo(new a.McGePoint3d(0,e.H_ngToWidest+e.RadiusFirst1+e.d1/2,0),!1).val).val,P=h-Math.floor(h/(n.AreaLength.Len_Pj_Center_全环/n.AreaLength.number_Around))*(n.AreaLength.Len_Pj_Center_全环/n.AreaLength.number_Around);let u;for(let p=0;p<n.AreaLength.number_Around;p++){u=p*n.AreaLength.Len_Pj_Center_全环/n.AreaLength.number_Around+P,u>n.AreaLength.Len_Pj_Center_全环&&(u=u-n.AreaLength.Len_Pj_Center_全环);const M=_.getPointAtDist(u).val;n.AreaLength.centerHookPoints.push(M),n.AreaLength.outHookPoints.push(l.getClosestPointTo(M,!1).val),n.AreaLength.inHookPoints.push(c.getClosestPointTo(M,!1).val);const g=E.DrawJxgj(s,o,M);for(const C of g)t.push(C)}v.Erase(d),n.EntityIds.DicSteelIdCol.set("GjbzIdCol_DrawSteelHookBarArch",t)}DrawRebarLabel(i){const n=i.Setting,e=i.Property,t=i.LinData,o=i.SteelData,s=[];let d="N[3]!"+o.DiameterN5.toFixed(0)+"@"+(100*o.SpacingN678).toFixed(0);n.PeiJin.IsN5_HRB400&&(d="N[3]$"+o.DiameterN5.toFixed(0)+"@"+(100*o.SpacingN678).toFixed(0));const c=E.MarkN5Steel(r.PolarPoint(t.O2_y,Math.PI/4,o.RadiusFirstSteel2),o.SpacingN678,e.AreaLength.outHookPoints,e.AreaLength.inHookPoints,d,!0);for(const g of c)s.push(g);const l=E.MarkN5Steel(r.PolarPoint(t.O_Invert,Math.PI*3/2+t.Radian_Invert内*1/4,o.RadiusFirstSteel5),o.SpacingN678,e.AreaLength.outHookPoints,e.AreaLength.inHookPoints,d,!1);for(const g of l)s.push(g);const _="N[4]!"+o.DiameterN678.toFixed(0)+"@"+(o.SpacingN678*100).toFixed(0),h=[];for(let g=e.AreaLength.number3_DiffThick_Invert+4;g<e.AreaLength.number3_DiffThick_Invert+10;g++)h.push(e.AreaLength.centerHookPoints[g]);const P=rt.ContinueLeader(h,_,Math.PI/2,o.SpacingN678/2,Math.PI,t.d1,e.TextHeight.Height_Ht);for(const g of P)s.push(g);if(t.d1!=t.d2){const g="N[5]!"+o.DiameterN678.toFixed(0)+"@"+(o.SpacingN678*100).toFixed(0),C=[];for(let F=2*e.AreaLength.number3_DiffThick_Invert+e.AreaLength.number1_SameThick_WallArch-1;F>e.AreaLength.number3_DiffThick_Invert+e.AreaLength.number1_SameThick_WallArch-1;F--)C.push(e.AreaLength.centerHookPoints[F]);const y=rt.ContinueLeader(C,g,Math.PI/2,o.SpacingN678/2,Math.PI,t.d1,e.TextHeight.Height_Ht);for(const F of y)s.push(F)}let u="N[6]!"+o.DiameterN678.toFixed(0)+"@"+(o.SpacingN678*100).toFixed(0);t.d1==t.d2&&(u="N[4]!"+o.DiameterN678.toFixed(0)+"@"+(o.SpacingN678*100).toFixed(0));const p=[];for(let g=2*e.AreaLength.number3_DiffThick_Invert+e.AreaLength.number1_SameThick_WallArch+Math.floor(e.AreaLength.number4_SameThick_Invert/4);g>2*e.AreaLength.number3_DiffThick_Invert+e.AreaLength.number1_SameThick_WallArch+Math.floor(e.AreaLength.number4_SameThick_Invert/4)-6;g--)p.push(e.AreaLength.centerHookPoints[g]);const M=rt.ContinueLeader(p,u,Math.PI*4/3,10,Math.PI,t.d1,e.TextHeight.Height_Ht);for(const g of M)s.push(g);e.EntityIds.DicSteelIdCol.set("GjbzIdCol_DrawRebarLabel",s)}DrawTitle(i){const n=i.Property,e=[];m.Heading1(n.FrameCoords.Pj.ptDm_TitleTopMid,"衬砌钢筋布置图","1:100"),n.EntityIds.DicSteelIdCol.set("GjbzIdCol_DrawTitle",e)}DrawSectionFzx(i){const n=i.Property;new Ue().DrawFzx_Sx(i,n.EntityIds.DicSteelIdCol)}}let ti=class extends zn{DrawMark(i){const n=i.Setting,e=i.Property,t=i.LinData;i.SteelData;const o=[],s=new a.McGePoint3d(0,0,0),d=r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusSecond5),c=r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFirst5),l=r.PolarPoint(t.O1,Math.PI/2,t.RadiusFirst1),_=r.PolarPoint(t.O1,Math.PI/2,t.RadiusSecond1);o.push(r.AddDimRotated(Math.PI/2,d,c,r.PolarPoint(c,0,t.a+t.RadiusFourth2+10),100)),o.push(r.AddDimRotated(Math.PI/2,l,_,r.PolarPoint(_,0,t.a+t.RadiusFourth2+10),100)),n.ChenQi.Cqdm.MarkCur?(o.push(r.AddDimRotated(Math.PI/2,s,c,r.PolarPoint(s,0,t.a+t.RadiusFourth2+10),100)),o.push(r.AddDimRotated(Math.PI/2,s,l,r.PolarPoint(l,0,t.a+t.RadiusFourth2+10),100))):(o.push(r.AddDimRotated(Math.PI/2,s,c,r.PolarPoint(s,0,t.a+t.RadiusFourth2+10),"h[2]")),o.push(r.AddDimRotated(Math.PI/2,s,l,r.PolarPoint(l,0,t.a+t.RadiusFourth2+10),"h"))),e.EntityIds.DicSteelIdCol.set("GjbzIdCol_DrawMark",o)}DrawSectionView(i){const n=i.Property,e=i.LinData,t=[];try{if(e.d1==e.d2){const o=Math.PI*3/2-e.Radian_Invert内/8,s=r.PolarPoint(e.O_Invert,o,e.RadiusFirst5-3),d=r.PolarPoint(e.O_Invert,o,e.RadiusSecond5+3);m.JoinIdCol(t,at.AddHatching(s,d,2,"Ⅰ",3.5,3,!1));const c=r.PolarPoint(e.O4_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusFirst4-3),l=r.PolarPoint(e.O4_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusSecond4+3);m.JoinIdCol(t,at.AddHatching(c,l,2,"Ⅰ",3.5,3,!1));const _=r.PolarPoint(e.O1,Math.PI*4/6,e.RadiusFirst1-1),h=r.PolarPoint(e.O1,Math.PI*4/6,e.RadiusSecond1+1);m.JoinIdCol(t,at.AddHatching(_,h,2,"Ⅰ",3.5,3,!1))}else{const o=Math.PI*3/2-e.Radian_Invert内/8,s=r.PolarPoint(e.O_Invert,o,e.RadiusFirst5-3),d=r.PolarPoint(e.O_Invert,o,e.RadiusSecond5+3);m.JoinIdCol(t,at.AddHatching(s,d,2,"Ⅲ",3.5,3,!1));const c=r.PolarPoint(e.O4_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusFirst4-3),l=r.PolarPoint(e.O4_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusSecond4+3);m.JoinIdCol(t,at.AddHatching(c,l,2,"Ⅱ",3.5,3,!1));const _=r.PolarPoint(e.O1,Math.PI*4/6,e.RadiusFirst1-1),h=r.PolarPoint(e.O1,Math.PI*4/6,e.RadiusSecond1+1);m.JoinIdCol(t,at.AddHatching(_,h,2,"Ⅰ",3.5,3,!1))}n.EntityIds.DicSteelIdCol.set("DrawGjbzDm",t)}catch(o){console.log("错误代码 2106")}}};class tn{constructor(){this.length_VerticalBar="1.000",this.HRB400=0,this.HPB300=0,this.rebarCoupler=0,this.HPB300Under10mm=0,this.HPB300NotLessThan10mm=0,this.HRB400Between18And28mm=0,this.HRB400NotLessThan18m=0}}class vt{DrawNumberTable(i){i.LinData;const n=i.SteelData,e=i.Property;this.CalcSteelGjsl(i);const t=e.FrameCoords.Pj.ptTable_QuantiyTopMid;try{const o=vt.PrepareCellTexts(ot.Sx160to350,i,n.steelQuantitys),s=new a.McDbXlsxTable;s.styleName="STANDARD",tt.SetTableCellsStyle(s,null,i),vt.FillTableString(s,o);const d=[{StartRowIndex:0,StartColIndex:0,EndRowIndex:1,EndColIndex:s.colCount-1,Cells:[]}];tt.MergeQuantityTableCells(s,d,[],[]),vt.SetRowAndColumnSizes(s),s.position=new a.McGePoint3d(t.x-s.colWidth/2,t.y,0),[].push(r.AppendEntity(s)),m.Heading1(new a.McGePoint3d(s.position.x+s.colWidth/2,s.position.y+5,0),"每延米钢筋数量表","")}catch(o){console.log("绘制 钢筋工程数量表 错误","提示")}}static SetRowAndColumnSizes(i){for(let n=0;n<i.rowCount;n++)i.setRowHeight(n,6);for(let n=0;n<i.colCount;n++)i.setColumnWidth(n,12);for(let n=1;n<14;n++)n<7?n%2!==0&&i.setColumnWidth(n,18):n%2===0&&i.setColumnWidth(n,18);i.setColumnWidth(7,18),i.setColumnWidth(10,20),i.setColumnWidth(14,18),i.setColumnWidth(15,18)}static FillTableString(i,n){i.setFromArray(n)}CalcSteelGjsl(i){}static PrepareCellTexts(i,n,e){let t=[];const o=n.SteelData,s="N[1]"+o.SteelChar+o.DiameterN12.toString(),d="N[2]"+o.SteelChar+o.DiameterN12.toString(),c="N[3]$"+o.DiameterN5.toFixed(0),l="N[4]!"+o.DiameterN678.toFixed(0),_="N[5]!"+o.DiameterN678.toFixed(0),h="N[6]!"+o.DiameterN678.toFixed(0);switch(i){case ot.Sx160to350:t=[tt.GetSteelQuantityRowData(e,"断面加宽","断面加宽","mm",P=>P.W),tt.GetSteelQuantityRowData(e,"HRB400钢筋",s,"每根长度(m)",P=>P.length_MainBar_Out),tt.GetSteelQuantityRowData(e,"HRB400钢筋",s,"根",P=>P.number_MainBar_Out),tt.GetSteelQuantityRowData(e,"HRB400钢筋",d,"每根长度(m)",P=>P.length_MainBar_In),tt.GetSteelQuantityRowData(e,"HRB400钢筋",d,"根",P=>P.number_MainBar_In),tt.GetSteelQuantityRowData(e,"HRB400钢筋",c,"每根长度(m)",P=>P.length_VerticalBar),tt.GetSteelQuantityRowData(e,"HRB400钢筋",c,"根",P=>P.number_VerticalBar),tt.GetSteelQuantityRowData(e,"HRB400钢筋","合计重量","kg",P=>P.strHRB400),tt.GetSteelQuantityRowData(e,"HPB300钢筋",l,"每根长度(m)",P=>P.length_HookBar_SameThick_Arch),tt.GetSteelQuantityRowData(e,"HPB300钢筋",l,"根",P=>P.number_HookBar_SameThick_Arch),tt.GetSteelQuantityRowData(e,"HPB300钢筋",_,"每根长度(m)",P=>P.length_HookBar_DiffThick_Wall),tt.GetSteelQuantityRowData(e,"HPB300钢筋",_,"根",P=>P.number_HookBar_DiffThick_Wall),tt.GetSteelQuantityRowData(e,"HPB300钢筋",h,"每根长度(m)",P=>P.length_HookBar_SameThick_Invert),tt.GetSteelQuantityRowData(e,"HPB300钢筋",h,"根",P=>P.number_HookBar_SameThick_Invert),tt.GetSteelQuantityRowData(e,"HPB300钢筋","合计重量","kg",P=>P.strHPB300),tt.GetSteelQuantityRowData(e,"钢筋合计","钢筋合计","kg",P=>P.totalWeight),tt.GetSteelQuantityRowData(e,"钢筋接驳器","钢筋接驳器","套",P=>P.strRebarCoupler)];break;case ot.Fzkd:break}return t}}let ei=class extends vt{CalcSteelGjsl(i){const n=i.Setting,e=i.Property,t=i.LinData,o=i.SteelData,s=o.steelQuantitys;""+n.PeiJin.Gjbjd.toString();const d=0,c=10/o.SpacingN1234;for(let l=0;l<t.SizeRow;l++){o.dmSizes[l];const _=new tn,h=e.AreaLength.Len_Pj_Out_全环-2*t.Radian_Arch1*o.RadiusSecondSteel1+o.dmSizes[l].length_Out_Arch-t.Radian_Invert外*o.RadiusSecondSteel5+o.dmSizes[l].length_Out_Invert+d*2,P=e.AreaLength.Len_Pj_In_全环-2*t.Radian_Arch1*o.RadiusFirstSteel1+o.dmSizes[l].length_In_Arch-t.Radian_Invert内*o.RadiusFirstSteel5+o.dmSizes[l].length_In_Invert+d*2,u=e.AreaLength.Len_Pj_Cen_Sgfys-2*t.Radian_Arch1*(t.RadiusFirst1+t.d1/2)+2*t.Radian_Arch1*(t.Dms[l].RadiusSecond_Arch-t.d1/2);let p=Math.floor(c*Math.floor(u/o.SpacingN678+.5)),M=Math.floor(c*2*e.AreaLength.number3_DiffThick_Invert),g=Math.floor(c*Math.floor(t.Radian_Invert内*(t.Dms[l].RadiusSecond_Invert-t.d2/2)/o.SpacingN678+.5));const C=Math.floor(2*(p+M+g)/c),y=t.d1/10-(o.TProtectiveCover_W+o.TProtectiveCover_N)/1e3+2*o.Len_HookedBar1_拱墙*o.DiameterN678/1e3,F=t.d2/10-(o.TProtectiveCover_W+o.TProtectiveCover_N)/1e3+2*o.Len_HookedBar3_仰拱*o.DiameterN678/1e3;t.d1==t.d2&&(p=p+M+g,M=0,g=0);let I=0,T=0;const R=(h/10+P/10)*c*it.Bar(o.DiameterN12.toFixed(0)),L=C*it.Bar(o.DiameterN5.toFixed(0));n.PeiJin.IsN5_HRB400?I=R+L:I=R,T=(y*p+(y+F)/2*M+F*g)*it.Bar(o.DiameterN678.toString()),_.W=(100*l).toFixed(0),_.length_MainBar_Out=(h/10).toFixed(n.PeiJin.Gjbjd),_.number_MainBar_Out=c.toFixed(0),_.length_MainBar_In=(P/10).toFixed(n.PeiJin.Gjbjd),_.number_MainBar_In=c.toFixed(0),_.length_VerticalBar="1.000",_.number_VerticalBar=C.toFixed(0),_.length_HookBar_SameThick_Arch=y.toFixed(n.PeiJin.Gjbjd),_.number_HookBar_SameThick_Arch=p.toFixed(1),t.d1==t.d2?_.length_HookBar_DiffThick_Wall=y.toFixed(n.PeiJin.Gjbjd):_.length_HookBar_DiffThick_Wall=y.toFixed(n.PeiJin.Gjbjd)+"~"+F.toFixed(n.PeiJin.Gjbjd),_.number_HookBar_DiffThick_Wall=M.toFixed(0),_.length_HookBar_SameThick_Invert=F.toFixed(n.PeiJin.Gjbjd),_.number_HookBar_SameThick_Invert=g.toFixed(0),_.strHRB400=I.toFixed(n.PeiJin.Gjbjd),_.strHPB300=T.toFixed(n.PeiJin.Gjbjd),_.totalWeight=(I+T).toFixed(n.PeiJin.Gjbjd),_.strRebarCoupler=(c*(Math.ceil(h/90)+Math.ceil(P/90))).toFixed(0),_.HRB400=I,_.HPB300=T,_.rebarCoupler=c*(Math.ceil(h/90)+Math.ceil(P/90)),o.DiameterN12>=18&&o.DiameterN12<28&&(_.HRB400Between18And28mm=R),o.DiameterN5>=10?_.HPB300NotLessThan10mm=_.HPB300NotLessThan10mm+L:_.HPB300Under10mm=_.HPB300Under10mm+L,o.DiameterN678>=10?_.HPB300NotLessThan10mm=_.HPB300NotLessThan10mm+T:_.HPB300Under10mm=_.HPB300Under10mm+T,s.push(_)}}},ni=class extends Je{SteelDraw(i,n){new Ke().DrawSteelLk(i),new ti().Execute(i),new $o().Execute(i),new qn().Execute(i),new ce().Note1(i),new ce().Note2(i),new vn().Execute(i),new Bn().DrawSteelSizeTable(i),new ei().DrawNumberTable(i),new Xe().DrawTk(i,2),new Qe().MoveDraw_Sx(i)}};class en{CalcSteelFirst(i){return null}CalcSteelSecond(i){return null}CalcSteelCenter(i){return null}CalcSteelFirst_Yg(i){return null}CalcSteelSecond_Yg(i){return null}CalcSteelCenter_Yg(i){return null}}let oi=class extends en{CalcSteelFirst(i){const n=i.LinData,e=i.SteelData,t=new Map,o=r.PolarPoint(n.O_Invert,Math.PI*3/2+n.Radian_Invert内/2,e.RadiusFirstSteel5),s=r.PolarPoint(n.O4_1_y,-n.Radian_Widest_inDown,e.RadiusFirstSteel4),d=r.PolarPoint(n.O3_y,n.Radian_Widest_inUp,e.RadiusFirstSteel3),c=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,e.RadiusFirstSteel1),l=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_NearSgArc内/4)),_=new a.McGePoint3d(s.x,s.y,Math.tan(n.Radian_Widest_inAll/4)),h=new a.McGePoint3d(d.x,d.y,Math.tan(n.Radian2/4)),P=new a.McGePoint3d(c.x,c.y,Math.tan(n.Radian_Arch1/2)),u=new a.McGePoint3d(-c.x,c.y,Math.tan(n.Radian2/4)),p=new a.McGePoint3d(-d.x,d.y,Math.tan(n.Radian_Widest_inAll/4)),M=new a.McGePoint3d(-s.x,s.y,Math.tan(n.Radian_NearSgArc内/4)),g=new a.McGePoint3d(-o.x,o.y,Math.tan(n.Radian_Invert内/4));return t.set("ptSteelFirst_Y2",l),t.set("ptSteelFirst_Y3",_),t.set("ptSteelFirst_Y4",h),t.set("ptSteelFirst_Y5",P),t.set("ptSteelFirst_Z5",u),t.set("ptSteelFirst_Z4",p),t.set("ptSteelFirst_Z3",M),t.set("ptSteelFirst_Z2",g),t.set("100ptSteelFirst2",l),t}CalcSteelSecond(i){const n=i.LinData,e=i.SteelData,t=new Map,o=r.PolarPoint(n.O3_y,n.Radian_Widest_inUp,e.RadiusSecondSteel3),s=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,e.RadiusSecondSteel1),d=new a.McGePoint3d(e.ptSteelSecond2_无凸度.x,e.ptSteelSecond2_无凸度.y,Math.tan(e.Steel_Radian_R4/4)),c=new a.McGePoint3d(e.ptSteelSecond3_无凸度.x,e.ptSteelSecond3_无凸度.y,Math.tan(n.Radian_Widest_inAll/4)),l=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian2/4)),_=new a.McGePoint3d(s.x,s.y,Math.tan(n.Radian_Arch1/2)),h=new a.McGePoint3d(-_.x,_.y,Math.tan(n.Radian2/4)),P=new a.McGePoint3d(-l.x,l.y,Math.tan(n.Radian_Widest_inAll/4)),u=new a.McGePoint3d(-c.x,c.y,Math.tan(e.Steel_Radian_R4/4)),p=new a.McGePoint3d(-d.x,d.y,Math.tan(n.Radian_Invert外/4));return t.set("ptSteelSecond_Y2",d),t.set("ptSteelSecond_Y3",c),t.set("ptSteelSecond_Y4",l),t.set("ptSteelSecond_Y5",_),t.set("ptSteelSecond_Z5",h),t.set("ptSteelSecond_Z4",P),t.set("ptSteelSecond_Z3",u),t.set("ptSteelSecond_Z2",p),t.set("100ptSteelSecond_Y2",d),t}CalcSteelCenter(i){const n=i.Setting,e=i.LinData,t=i.SteelData,o=new Map;let s,d;n.ChenQi.Cqdm.Wlkxq?(d=r.PolarPoint(e.O4_2_y,-e.Radian_Widest_inDown,e.RadiusSecond4-e.d1/2),s=r.PolarPoint(e.O_Invert,Math.PI*3/2+(Math.PI-e.Radian_Arch1-e.Radian_NearSgArc内-t.Steel_Radian_R4),e.RadiusFirst5+e.d2/2)):(s=r.PolarPoint(e.O4_1_y,-e.Radian_Widest_inDown-e.Radian_NearSgArc内,e.RadiusFirst4+e.d2/2),d=r.PolarPoint(e.O4_1_y,-e.Radian_Widest_inDown,e.RadiusFirst4+e.d1/2));const c=r.PolarPoint(e.O3_y,e.Radian_Widest_inUp,e.RadiusFirst3+e.d1/2),l=r.PolarPoint(e.O1,Math.PI/2-e.Radian_Arch1,e.RadiusFirst1+e.d1/2),_=new a.McGePoint3d(s.x,s.y,Math.tan(t.Steel_Radian_R4/4)),h=new a.McGePoint3d(d.x,d.y,Math.tan(e.Radian_Widest_inAll/4)),P=new a.McGePoint3d(c.x,c.y,Math.tan(e.Radian2/4)),u=new a.McGePoint3d(l.x,l.y,Math.tan(e.Radian_Arch1/2)),p=new a.McGePoint3d(-u.x,u.y,Math.tan(e.Radian2/4)),M=new a.McGePoint3d(-P.x,P.y,Math.tan(e.Radian_Widest_inAll/4)),g=new a.McGePoint3d(-h.x,h.y,Math.tan(t.Steel_Radian_R4/4)),C=new a.McGePoint3d(-_.x,_.y,Math.tan(e.Radian_Invert外/4));return o.set("ptSteelCenter_Y2",_),o.set("ptSteelCenter_Y3",h),o.set("ptSteelCenter_Y4",P),o.set("ptSteelCenter_Y5",u),o.set("ptSteelCenter_Z5",p),o.set("ptSteelCenter_Z4",M),o.set("ptSteelCenter_Z3",g),o.set("ptSteelCenter_Z2",C),o.set("100ptSteelCenter_Y2",_),o}};const Yn=[["图号","大图名","小图名","日期","轨道类型","最大加宽值","当前绘图加宽","h2","h3","d1","t1","m1 ","d2","t2","m2","Dh","Dz","Lg","Lb","Ly","Bw","Fwi","Pw","Pm","Beton","Pen","图号(钢筋图一)","小图名(钢筋图一)","图名(钢筋图二)","小图号(钢筋图二)","DiameterN12","DiameterN34","SpacingN1234","DiameterN5","DiameterN678","SpacingN678","TProtectiveCover_Y","TProtectiveCover_N","钢 架","","","","","","","","","",""],["说明:1、断面尺寸长度以cm计,角度以“度”计","如:200km/h单线电化铁路隧道复合式衬砌","如:I&I级围岩曲墙(有仰拱)衬砌断面","绘图日期","有砟/无砟","一般为80","出图加宽,0~最大加宽,10的倍数","最宽至直边高度","内轨至边墙小平台","拱墙衬砌厚度","拱墙预留变形","拱墙初支厚度","仰拱衬砌厚度","仰拱预留变形","仰拱初支厚度","锚杆环向间距","锚杆纵向间距","拱部锚杆长度","边墙锚杆长度","仰拱锚杆长度","钢筋网网格间距","钢筋网直径(mm)","钢筋网设置部位","锚杆设置部位","拱墙仰拱砼材料","喷砼材料","第一张钢筋图图号","第一张钢筋图图名","第二张钢筋图图号","第二张钢筋图图名","拱墙主筋直径(N1、N2)","仰拱主筋直径(N3、N4)","主筋间距(N1、N2、N3、N4)","纵向筋直径(N5)","钢筋直径(N6、N7、N8)","钢筋间距(N6、N7、N8)","靠初支侧保护层","靠内侧保护层","图号(钢架图一)","小图名(钢架图一)","图号(钢架图二)","小图名(钢架图二)",'钢架型号(双层以"/"隔开)',"设置部位","初喷厚度","仰拱D单元角度","钢架预留变形量","锁脚锚管长",""],["所有输入数据为0加宽时的值,除钢筋直径、间距以mm计外,其余都以cm计","","","版本:Ver2012.10.1","","cm","cm","cm","cm","cm","cm","cm","cm","cm","cm","cm","cm","cm","cm","cm","cm","mm","拱部局部/拱部/拱墙/全环","同左","","","","","","","mm","mm","mm","mm","mm","mm","mm","mm","第一张钢架图图号","第一张钢架图图名","工字钢架不用填","工字钢架不用填","HW175","拱墙/全环","cm","(单位:度)","","单位:cm",""],["贰隧(10)0080-14-3","200双线","200双线","2010.03","有砟","80","0","65","150","45","10~20","23","50","10~20","23","120","120","300","300","300","20","6","拱墙","拱墙","C36混凝土","C25喷混凝土","贰隧(10)0080-14-3","Ⅴ级围岩Ⅴ[c]型衬砌钢筋图(一)","贰隧(10)0080-14-4","Ⅴ级围岩Ⅴ[c]型衬砌钢筋图(二)","18","18","250","10","8","250","55","55","a","b","c","d","I18","全环","4","16","10","450","IV级围岩深埋地段"]];class nn{FixSpreadDefaultStyle(i){}init_Plugin(i,n){}LoadSetting(i){return new Dn}ReadData(i,n){return new Et}}let Re=class Un extends nn{constructor(){super(...arguments);be(this,"globalData")}ReadData(n,e){try{const t=new Et;return t.Cq=this.ReadCq(n,e),t.Gj=this.ReadGj(n,e),t.Pj=this.ReadPj(n,e),t}catch(t){return new Et}}ReadCq(n,e){try{const t=new zt;return t.Cqtk=Un.ReadCqtk(n,e),t.Zhcs=ye.ReadZhcs(n,e),t.Dmcc=ye.ReadDmcc(n,e),t.Jzcl=ye.ReadJzcl(n,e),t.Sydl=ye.ReadSydl(n,e),t}catch(t){return console.error("读取第"+e.toString()+"行数据出错,错误代码205 ReadCq","提示",t),new zt}}static ReadCqtk(n,e){try{const t=n,o=new Bt;return o.Th=t.getCellTextValue(e,0).trim(),o.Dtm=t.getCellTextValue(e,1).trim(),o.Xtm=t.getCellTextValue(e,2).trim(),o.Htrq=t.getCellTextValue(e,3).trim(),o.Gdlx=t.getCellTextValue(e,4).trim(),o}catch(t){return console.error("读取第"+e.toString()+"行数据出错,错误代码201 ReadCqsj","提示",t),new Bt}}ReadPj(n,e){try{const t=new Zt;return t.Pjcs=wn.ReadPjcs(n,e),t.Pjtk=wn.ReadPjtk(n,e),t}catch(t){return console.error("读取第"+e.toString()+"行数据出错,错误代码206 ReadPj","提示",t),new Zt}}ReadGj(n,e){const t=new Me;return t.Gjtk=Gn.ReadGjtk(n,e),t.Gjcs=Gn.ReadGjcs(n,e),t}GetBaseClass(){const n=new Ut;return n.Cq=new $t,n.Cq.linDataHelper=new zo,n.Cq.liningCalcHelper=new Vo,n.Cq.liningBase=new Uo,n.Pj=new Nt,n.Pj.steelBase=new ni,n.Pj.steelCalcHelper=new oi,n.Pj.steelDataHelper=new Yo,n.Gj=new Lt,n.Gj.framDataHelper=new Eo,n}init_Plugin(n){const e=new De;try{const t=r.UcsToWcs(new a.McGePoint3d),o=n||Yn;for(let s=0;s<o.length-3;s++){const d=r.PolarPoint(t,Math.PI*3/2,s*450),c=r.PolarPoint(d,0,450*4),l=r.PolarPoint(d,0,450*6);e.LinData=new Tn,e.FramData=new Fn,e.SteelData=new Rn;const _=new a.McDbXlsxTable;_.setFromArray(o);const h=this.ReadData(_,s+3);e.Data=h,h.Pj.Pjcs.DiameterN12==0||h.Pj.Pjcs.DiameterN34==0||h.Pj.Pjcs.SpacingN1234==0||h.Pj.Pjcs.DiameterN5==0||h.Pj.Pjcs.DiameterN678==0||h.Pj.Pjcs.SpacingN678==0||h.Pj.Pjcs.TProtectiveCover_W==0||h.Pj.Pjcs.TProtectiveCover_N==0||new je().InitializeAndRunSteel(c,e,this.GetBaseClass(),ot.DL5Center),new pe().InitializeAndRunLining(d,e,this.GetBaseClass(),ot.DL5Center),h.Gj.Gjcs.Thick!=0||h.Gj.Gjcs.Thick_Cp!=0}}catch(t){console.error(String(t))}}init_Plugin_Part(n){const e=new De;try{const t=r.UcsToWcs(new a.McGePoint3d),o=n||Yn;for(let s=0;s<o.length-3;s++){const d=r.PolarPoint(t,Math.PI*3/2,s*450),c=r.PolarPoint(d,0,450*4),l=r.PolarPoint(d,0,450*6);e.LinData=new Tn,e.FramData=new Fn,e.SteelData=new Rn;const _=new a.McDbXlsxTable;_.setFromArray(o);const h=this.ReadData(_,s+3);e.Data=h,new pe().InitializeAndRunLiningPartial(d,e,this.GetBaseClass(),ot.DL5Center),h.Gj.Gjcs.Thick!=0||h.Gj.Gjcs.Thick_Cp!=0}}catch(t){console.error(String(t))}}};class ii extends Ne{InitLinCommonData(i,n,e){const t=i.Data,o=i.Setting,s=i.LinData;super.InitLinCommonData(i,n,e),s.RadiusFirst2=t.Cq.Dmcc.RadiusFirst2/10,s.RadiusFirst3=t.Cq.Dmcc.RadiusFirst3/10,s.H_ngToNearSgArcTopPoint=t.Cq.Dmcc.H_ngToNearSgArcTopPoint/10,s.Radian_Widest_inAll=Math.PI/2-s.Radian_Arch1+Math.asin((s.H_ngToWidest-s.H_ngToNearSgArcTopPoint)/s.RadiusFirst2),s.Radian_Widest_inDown=Math.asin((s.H_ngToWidest-s.H_ngToNearSgArcTopPoint)/s.RadiusFirst2),s.Radian_Widest_inUp=Math.PI/2-s.Radian_Arch1,s.a=s.a_0+s.w/2,s.b=s.b_0+s.w/2,s.RadiusFirst1=s.RadiusFirst2+s.a/Math.sin(s.Radian_Arch1);const d=s.a/Math.tan(s.Radian_Arch1);s.O1=new a.McGePoint3d(0,s.H_ngToWidest-d,0),s.O2_z=new a.McGePoint3d(-s.a,s.H_ngToWidest,0),s.O2_y=new a.McGePoint3d(s.a,s.H_ngToWidest,0),s.O3_1_y=r.PolarPoint(s.O2_y,-s.Radian_Widest_inDown,s.RadiusFirst2-s.RadiusFirst3),s.O3_1_z=new a.McGePoint3d(-s.O3_1_y.x,s.O3_1_y.y,s.O3_1_y.z);const c=s.O3_1_y.y-Math.sqrt(Math.pow(s.RadiusFirst3,2)-Math.pow(s.b-s.O3_1_y.x,2)),l=new a.McGePoint3d(s.b,c,0),_=r.PolarPoint(s.O2_y,-s.Radian_Widest_inDown,s.RadiusFirst2),h=l.distanceTo(_);s.Radian_NearSgArc内=2*Math.asin(h/2/s.RadiusFirst3),s.Radian_Invert内=2*Math.PI-s.Radian_Arch1*2-s.Radian_Widest_inAll*2-s.Radian_NearSgArc内*2,s.O_Invert=new a.McGePoint3d(0,s.O3_1_y.x/Math.tan(s.Radian_Invert内/2)+s.O3_1_y.y,0),s.RadiusFirst4=s.O_Invert.distanceTo(l),s.RadiusSecond1=s.RadiusFirst1+s.d1,s.RadiusSecond2=s.RadiusFirst2+s.d1,s.RadiusSecond4=s.RadiusFirst4+s.d2;let P,u;if(o.ChenQi.Cqdm.Wlkxq){const g=r.PolarPoint(s.O_Invert,-s.Radian_Widest_inDown,s.RadiusSecond4);u=r.PolarPoint(s.O3_1_y,-s.Radian_Widest_inDown,s.RadiusFirst3+s.d1),P=A.IntsOfLineToCircle5P(s.O_Invert,s.RadiusSecond4,g,u,"MinY"),s.O3_2_y=A.IntsOfLineToLine(u,s.O3_1_y,P,s.O_Invert),s.O3_2_z=new a.McGePoint3d(-s.O3_2_y.x,s.O3_2_y.y,0),s.Radian_Invert外=2*Math.asin(Math.abs(P.x)/s.RadiusSecond4)}else{P=r.PolarPoint(s.O3_1_y,-s.Radian_Widest_inDown-s.Radian_NearSgArc内,s.RadiusFirst3+s.d2),u=r.PolarPoint(s.O3_1_y,-s.Radian_Widest_inDown,s.RadiusFirst3+s.d1);const g=new a.McGeVector3d(u.x-P.x,u.y-P.y),C=Math.tan(g.angleTo1(a.McGeVector3d.kXAxis)-Math.PI/2),y=Math.tan(-s.Radian_Widest_inDown),F=new a.McGePoint3d((P.x+u.x)/2,(P.y+u.y)/2,0),I=F.y-F.x*C,R=(s.O2_y.y-s.O2_y.x*y-I)/(C-y),L=C*R+I;s.O3_2_y=new a.McGePoint3d(R,L,0),s.O3_2_z=new a.McGePoint3d(-s.O3_2_y.x,s.O3_2_y.y,0),s.Radian_Invert外=s.Radian_Invert内}s.RadiusSecond3=P.distanceTo(s.O3_2_y),s.Radian_NearSgArc外=2*Math.asin(P.distanceTo(u)/2/s.RadiusSecond3),A.getArcRadianByTwoPoint(P,u,s.RadiusSecond3),s.RadiusThird1=s.RadiusSecond1+s.ylbx_Gq,s.RadiusThird2=s.RadiusSecond2+s.ylbx_Gq,s.RadiusThird3=s.RadiusSecond3+s.ylbx_Yg,s.RadiusThird4=s.RadiusSecond4+s.ylbx_Yg,s.RadiusFourth1=s.RadiusThird1+s.m1,s.RadiusFourth2=s.RadiusThird2+s.m1,s.RadiusFourth3=s.RadiusThird3+s.m2,s.RadiusFourth4=s.RadiusThird4+s.m2,s.O1_p=s.O1,s.O2_y_p=s.O2_y,s.O2_z_p=s.O2_z,s.O3_2_y_p=s.O3_2_y,s.O3_2_z_p=s.O3_2_z,o.ChenQi.Cqdm.Zbdycqlk?s.Radian_Widest_outDown=Math.asin(s.H_zkToZb/s.RadiusSecond2):s.Radian_Widest_outDown=Math.asin(s.H_zkToZb/(s.RadiusSecond2+s.m1)),s.Radian_Widest_outAll=s.Radian_Widest_inUp+s.Radian_Widest_outDown;const p=.02;s.railStyle=="有砟"?(s.dblHeight1=w.CnRound(s.H_ngToLjm-((s.b1_y_0+s.b1_z_0-s.d)/2-7.175)*p,1),s.dblHeight2=w.CnRound(s.dblHeight1+(s.b1_y_0+s.b1_z_0)/2*p,1),s.dblGradOfInvertFilling=(s.dblHeight2-s.dblHeight1)/(s.b1_y+s.b1_z-o.ChenQi.Sg.Zxsg.A/10+2*o.ChenQi.Sg.Zxsg.B/10)*2):s.railStyle=="无砟"&&(s.dblHeight1=s.H_ngToLjm,s.dblHeight2=s.H_ngToLjm+(s.d+s.w-28-o.ChenQi.Sg.Zxsg.A/10-2*o.ChenQi.Sg.Zxsg.C/10-.2)/2*p,s.dblGradOfInvertFilling=p),s.RailCenterOffset=(s.b1_y-s.b1_z)/2;const M=[];for(let g=0;g<s.SizeRow;g++){const C=Math.asin((s.H_ngToWidest-s.H_ngToGb)/s.RadiusFirst2),y=new qe;y.W=g,y.lineSpace=s.d+g,y.b1=s.RadiusFirst2+s.a_0+g/2,y.b2=s.RadiusFirst2*Math.cos(C)+s.a_0+g/2,y.a=g/2+s.a_0,y.RadiusFirst_Arch=s.RadiusFirst2+y.a/Math.sin(s.Radian_Arch1),y.RadiusSecond_Arch=y.RadiusFirst_Arch+s.d1,y.RadiusFirst_Invert=((s.RadiusFirst2-s.RadiusFirst3)*Math.cos(s.Radian_Widest_inDown)+g/2+s.a_0)/Math.sin(s.Radian_Invert内/2)+s.RadiusFirst3,y.RadiusSecond_Invert=y.RadiusFirst_Invert+s.d2,y.H_ngToArchCenter=s.H_ngToWidest-y.a/Math.tan(s.Radian_Arch1),y.H_ngToInvertCenter=((s.RadiusFirst2-s.RadiusFirst3)*Math.cos(s.Radian_Widest_inDown)+g/2+s.a_0)/Math.tan(s.Radian_Invert内/2)+s.H_ngToWidest-(s.RadiusFirst2-s.RadiusFirst3)*Math.sin(s.Radian_Arch1+s.Radian_Widest_inAll+s.Radian_NearSgArc内-Math.PI/2),y.H_ngToFirstInvertBottom=y.RadiusFirst_Invert-y.H_ngToInvertCenter,y.h=y.RadiusFirst_Arch+s.H_ngToWidest-y.a/Math.tan(s.Radian_Arch1),y.H=y.h+s.d1+s.d2+s.m1+s.m2+y.H_ngToFirstInvertBottom+s.ylbx_Gq+s.ylbx_Yg+o.ChenQi.Tssz.Y_Offset,y.B=2*(s.O2_y_p.x-s.a+y.a+s.RadiusFourth2),M.push(y)}s.Dms=M,s.RadiusFirst1==s.RadiusFirst2&&s.RadiusFirst3==s.RadiusFirst1&&s.RadiusFirst4==s.RadiusFirst1?s.IsCircular=!0:s.IsCircular=!1}CalcLinHotData(i){super.CalcLinHotData(i),i.Data;const n=i.Setting,e=i.Property,t=i.LinData,o=[];e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y1");const s=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y2"),d=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y3");e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y4"),e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z4"),e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z3"),e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z2"),e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z1"),e.ContourPoints.Cq.DicSecond.get("ptSecond_Y2");const c=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y3");e.ContourPoints.Cq.DicSecond.get("ptSecond_Y4"),e.ContourPoints.Cq.DicSecond.get("ptSecond_Z4"),e.ContourPoints.Cq.DicSecond.get("ptSecond_Z3"),e.ContourPoints.Cq.DicSecond.get("ptSecond_Z2"),e.ContourPoints.Cq.DicThird_Ylbx_Gq.get("ptThird_Y2"),e.ContourPoints.Cq.DicThird_Ylbx_Gq.get("ptThird_Y3"),e.ContourPoints.Cq.DicFirst.get("ptFirst_Y2"),e.ContourPoints.Cq.DicFirst.get("ptFirst_Y3"),e.ContourPoints.Cq.DicFirst.get("ptFirst_Y4"),e.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),e.ContourPoints.Cq.DicFirst.get("ptFirst_Z3"),e.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),e.ContourPoints.Cq.DicForth_Yg.get("pt5th1"),e.ContourPoints.Cq.DicForth_Yg.get("pt5th2");const l=e.ContourPoints.Cq.DicForth_Yg.get("pt5th3"),_=e.ContourPoints.Cq.DicForth_Yg.get("pt5th4"),h=A.getArcRadianByTwoPoint(new a.McGePoint3d(l.x,l.y,0),new a.McGePoint3d(_.x,_.y,0),t.RadiusFourth3),P=r.Ang2Rad(t.AngleGb);for(let u=0;u<t.SizeRow;u++){const p=t.Dms[u],M=new ve,g=2*t.Radian_Arch1*(p.RadiusSecond_Arch+t.m1+t.ylbx_Gq),C=2*t.Radian_Widest_outAll*t.RadiusFourth2,y=2*t.RadiusFourth3*h,F=t.Radian_Invert外*(p.RadiusSecond_Invert+t.m2),I=2*((t.H_ngToWidest-t.RadiusFourth2*Math.sin(t.Radian_Widest_outDown)-s.y)/Math.cos(t.Radian_Widest_outDown)),T=2*t.Radian_Arch1*p.RadiusSecond_Arch,R=2*t.Radian_Widest_inAll*t.RadiusSecond2,L=2*t.Radian_NearSgArc外*t.RadiusSecond3,f=p.RadiusSecond_Invert*t.Radian_Invert外,G=2*t.Radian_Arch1*p.RadiusFirst_Arch,O=2*t.Radian_Widest_inAll*t.RadiusFirst2,b=2*t.Radian_NearSgArc内*t.RadiusFirst3,H=p.RadiusFirst_Invert*t.Radian_Invert内,x=2*t.Radian_Arch1*(p.RadiusSecond_Arch+t.ylbx_Gq),j=2*t.Radian_Widest_outAll*t.RadiusThird2,N=2*((t.H_ngToWidest-(t.RadiusSecond2+t.ylbx_Gq)*Math.sin(t.Radian_Widest_outDown)-s.y)/Math.cos(t.Radian_Widest_outDown));M.Lenth_Forth_Arch=X.CalcArchLength(P,t.Radian_Arch1,t.Radian_Widest_outAll,p.RadiusSecond_Arch+t.m1+t.ylbx_Gq,t.RadiusFourth2),M.Lenth_Forth_ArchWall=g+C+I;const k=s.x-_.x;M.Lenth_Forth_Invert=2*k+y+F,M.Lenth_Third_Arch=X.CalcArchLength(P,t.Radian_Arch1,t.Radian_Widest_outAll,p.RadiusFirst_Arch+t.d1+t.ylbx_Gq,t.RadiusFirst2+t.d1+t.ylbx_Gq),M.Lenth_Third_ArchWall=x+j+N,M.Lenth_Second_Arch=X.CalcArchLength(P,t.Radian_Arch1,t.Radian_Widest_inAll,p.RadiusSecond_Arch,t.RadiusSecond2);const Y=t.H_ngToGb+n.ChenQi.Cqsz.Fps.JsgdValue/10,U=A.IntsOfLineToCircle5P(t.O3_2_y,t.RadiusSecond3,new a.McGePoint3d(0,Y,0),new a.McGePoint3d(1,Y,0),"MaxX"),K=2*A.getArcRadianByTwoPoint(c,U,t.RadiusSecond3)*t.RadiusSecond3;M.Lenth_Second_ArchWall_Fsb=K+T+R,M.Lenth_Second_ArchWall_Psg=M.Lenth_Second_ArchWall_Fsb-.5,M.Lenth_Second_Around=T+R+L+f,M.Lenth_Second_ArchWall_Cq=(t.Radian_Arch1*p.RadiusSecond_Arch+t.Radian_Widest_inAll*t.RadiusSecond2)*2,M.Lenth_Second_Invert_Cq=M.Lenth_Second_Around-M.Lenth_Second_ArchWall_Cq,M.Lenth_First_Around=G+O+b+H,M.Lenth_First_ArchWall=G+O+b,M.Lenth_Offset10cm_ArchWall=0,M.Lenth_Offset10cm_Invert=0;const B=A.getAreaOfBow(t.Dms[u].RadiusFirst_Arch,2*t.Radian_Arch1),Z=2*A.getAreaOfBow(t.RadiusFirst2,t.Radian_Widest_inAll),V=2*A.getAreaOfBow(t.RadiusFirst3,t.Radian_NearSgArc内),q=A.getAreaOfBow(t.Dms[u].RadiusFirst_Invert,t.Radian_Invert内),z=2*t.Dms[u].RadiusFirst_Arch*Math.sin(t.Radian_Arch1),$=2*t.RadiusFirst2*Math.cos(t.Radian_Widest_inDown)+2*t.Dms[u].a,nt=2*t.Dms[u].RadiusFirst_Invert*Math.sin(t.Radian_Invert内/2),ct=t.RadiusFirst2*Math.sin(t.Radian_Widest_inDown)+t.RadiusFirst2*Math.sin(Math.PI/2-t.Radian_Arch1),st=t.RadiusFirst3*(Math.sin(t.Radian_Widest_inDown+t.Radian_NearSgArc内)-Math.sin(t.Radian_Widest_inDown)),et=(z+$)*ct/2,pt=($+nt)*st/2;M.Area_First=B+Z+V+q+et+pt-e.SteelCalcData.AreaOf错台量;const ht=A.getAreaOfBow(t.Dms[u].RadiusFirst_Arch+t.d1,2*t.Radian_Arch1),Mt=2*A.getAreaOfBow(t.RadiusSecond2,t.Radian_Widest_inAll),wt=2*A.getAreaOfBow(t.RadiusSecond3,t.Radian_NearSgArc外),Dt=A.getAreaOfBow(t.Dms[u].RadiusSecond_Invert,t.Radian_Invert外),Gt=2*(t.Dms[u].RadiusFirst_Arch+t.d1)*Math.sin(t.Radian_Arch1),lt=2*t.RadiusSecond2*Math.cos(t.Radian_Widest_inDown)+2*t.Dms[u].a,yt=2*t.Dms[u].RadiusSecond_Invert*Math.sin(t.Radian_Invert外/2),Ft=t.RadiusSecond2*Math.sin(t.Radian_Widest_inDown)+t.RadiusSecond2*Math.sin(Math.PI/2-t.Radian_Arch1),xt=t.RadiusSecond3*(Math.sin(t.Radian_Widest_inDown+t.Radian_NearSgArc外)-Math.sin(t.Radian_Widest_inDown)),It=(Gt+lt)*Ft/2,gt=(lt+yt)*xt/2;M.Area_Second=ht+Mt+wt+Dt+It+gt;const Ot=A.getAreaOfBow(t.Dms[u].RadiusFirst_Arch+t.d1+t.m1+t.ylbx_Gq,2*t.Radian_Arch1),ft=2*A.getAreaOfBow(t.RadiusFourth2,Math.PI/2-t.Radian_Arch1+t.Radian_Widest_outDown),bt=new a.McGePoint3d(t.Dms[u].a+(t.RadiusSecond2-t.RadiusSecond3)*Math.cos(t.Radian_Widest_inDown),t.H_ngToWidest-(t.RadiusSecond2-t.RadiusSecond3)*Math.sin(t.Radian_Widest_inDown),0),Ct=A.IntsOfLineToCircle5P(bt,t.RadiusFourth3,new a.McGePoint3d(0,-t.H_ngToBqpt,0),new a.McGePoint3d(1,-t.H_ngToBqpt,0),"MaxX"),Kt=r.PolarPoint(new a.McGePoint3d(0,t.Dms[u].H_ngToInvertCenter,0),Math.PI*3/2+t.Radian_Invert外/2,t.Dms[u].RadiusSecond_Invert+t.m2),fe=A.getArcRadianByTwoPoint(Ct,Kt,t.RadiusFourth3),_e=2*A.getAreaOfBow(t.RadiusFourth3,fe),Ht=A.getAreaOfBow(t.Dms[u].RadiusSecond_Invert+t.m2,t.Radian_Invert外),he=2*(t.Dms[u].RadiusSecond_Arch+t.m1+t.ylbx_Gq)*Math.sin(t.Radian_Arch1),qt=2*t.Dms[u].a+2*t.RadiusFourth2*Math.cos(t.Radian_Widest_outDown),Xt=qt-2*(t.H_ngToWidest+n.ChenQi.Tssz.Y_Offset-t.RadiusFourth2*Math.sin(t.Radian_Widest_outDown)+t.H_ngToBqpt)*Math.tan(t.Radian_Widest_outDown),an=t.RadiusFourth2*Math.sin(Math.PI/2-t.Radian_Arch1)+t.RadiusFourth2*Math.sin(t.Radian_Widest_outDown),cn=t.H_ngToWidest+n.ChenQi.Tssz.Y_Offset-t.RadiusFourth2*Math.sin(t.Radian_Widest_outDown)+t.H_ngToBqpt,dn=2*Ct.x,Ae=(t.Dms[u].RadiusSecond_Invert+t.m2)*Math.sin(t.Radian_Invert外/2)*2,Le=Math.abs(Ct.y-Kt.y),ln=(he+qt)/2*an,_n=(qt+Xt)/2*cn,hn=(dn+Ae)/2*Le;M.Area_Fourth=Ot+ft+_e+Ht+ln+_n+hn,M.Area_SecondSgf=0,M.Area_FirstSgf=0,M.Volume_拱墙二衬=M.Area_Second-M.Area_First,M.Volume_仰拱二衬=M.Area_Second-M.Area_First-M.Volume_拱墙二衬,M.两侧施工缝厚度=e.KeyPoint.pt施工缝左1.distanceTo(e.KeyPoint.pt施工缝左2)+e.KeyPoint.pt施工缝右1.distanceTo(e.KeyPoint.pt施工缝右2);const xe=t.b1_y+t.Z2c1g.b侧壁厚+t.Z2c1g.b侧壁盖板搭接宽+t.Z2c1g.b沟槽间壁厚1+t.Z2c1g.B_电力电缆槽宽+t.Z2c1g.B_水沟宽,Pn=r.PolarPoint(d,Math.PI*3/2-t.Radian_Widest_outDown,d.y-Y).x,un=A.IntsOfLineToCircle5P(t.O3_2_y,t.RadiusSecond3,new a.McGePoint3d(0,-Y,0),new a.McGePoint3d(1,-Y,0),"MaxX").x;M.纵向盲管垂直弯入侧沟长度=un-xe,M.泄水孔不入岩深度=Pn-xe,M.侧沟至中心沟水平长=t.b1_y_0+t.b1_z_0+u-t.Zxsg.zxA内侧宽,o.push(M)}t.hotDatas=o}InitColorAndCoords(i,n){super.InitColorAndCoords(i,n);const e=i.Property;e.FrameCoords.Cq.ptDm_OriginTarget=new a.McGePoint3d(n.x+135,n.y-145,0),e.FrameCoords.Cq.ptNote_TopLeft1=new a.McGePoint3d(n.x+260,n.y-110,0),e.FrameCoords.Cq.ptTable_DmccTopMid=new a.McGePoint3d(n.x+230,n.y-30,0),e.FrameCoords.Cq.ptTable_QuantiyTopMid=new a.McGePoint3d(e.FrameCoords.Cq.ptBase2.x+220,e.FrameCoords.Cq.ptBase2.y-25,0),e.FrameCoords.Cq.ptTable_ZhcsTopMid=new a.McGePoint3d(e.FrameCoords.Cq.ptBase1.x+130,e.FrameCoords.Cq.ptBase1.y-230,0)}}class si extends Oe{}class ri extends Be{InitSteelCommonData(i){const n=i.Data,e=i.Setting,t=i.LinData,o=i.SteelData;if(o.DjcdValue=e.PeiJin.DjcdValue,o.DiameterN12=n.Pj.Pjcs.DiameterN12,o.DiameterN34=n.Pj.Pjcs.DiameterN34,o.SpacingN1234=n.Pj.Pjcs.SpacingN1234,o.DiameterN5=n.Pj.Pjcs.DiameterN5,o.DiameterN678=n.Pj.Pjcs.DiameterN678,o.SpacingN678=n.Pj.Pjcs.SpacingN678,o.TProtectiveCover_W=n.Pj.Pjcs.TProtectiveCover_W,o.TProtectiveCover_N=n.Pj.Pjcs.TProtectiveCover_N,o.offSetSteel_W=(o.TProtectiveCover_W+o.DiameterN12/2+o.DiameterN678)/100,o.offSetSteel_N=(o.TProtectiveCover_N+o.DiameterN12/2+o.DiameterN678)/100,o.RadiusFirstSteel1=t.RadiusFirst1+o.offSetSteel_N,o.RadiusFirstSteel2=t.RadiusFirst2+o.offSetSteel_N,o.RadiusFirstSteel3=t.RadiusFirst3+o.offSetSteel_N,o.RadiusFirstSteel4=t.RadiusFirst4+o.offSetSteel_N,o.RadiusSecondSteel1=t.RadiusSecond1-o.offSetSteel_W,o.RadiusSecondSteel2=t.RadiusSecond2-o.offSetSteel_W,o.RadiusSecondSteel4=t.RadiusSecond4-o.offSetSteel_W,e.ChenQi.Cqdm.Wlkxq){const c=r.PolarPoint(t.O_Invert,-t.Radian_Widest_inDown,o.RadiusSecondSteel4);o.ptSteelSecond_Y2_无凸度=r.PolarPoint(t.O3_1_y,-t.Radian_Widest_inDown,t.RadiusFirst3+t.d1-o.offSetSteel_W),o.ptSteelSecond_Y1_无凸度=A.IntsOfLineToCircle5P(t.O_Invert,o.RadiusSecondSteel4,c,o.ptSteelSecond_Y2_无凸度,"MinY"),o.Steel_O3_2_y=A.IntsOfLineToLine(o.ptSteelSecond_Y2_无凸度,t.O3_1_y,o.ptSteelSecond_Y1_无凸度,t.O_Invert),o.Steel_O3_2_z=new a.McGePoint3d(-o.Steel_O3_2_y.x,o.Steel_O3_2_y.y,0),o.RadiusSecondSteel3=o.ptSteelSecond_Y1_无凸度.distanceTo(o.Steel_O3_2_y),o.Steel_Radian_R3=A.getArcRadianByTwoPoint(o.ptSteelSecond_Y1_无凸度,o.ptSteelSecond_Y2_无凸度,o.RadiusSecondSteel3)}else{o.ptSteelSecond_Y1_无凸度=r.PolarPoint(t.O3_1_y,-t.Radian_Widest_inDown-t.Radian_NearSgArc内,t.RadiusFirst3+t.d2-o.offSetSteel_W),o.ptSteelSecond_Y2_无凸度=r.PolarPoint(t.O3_1_y,-t.Radian_Widest_inDown,t.RadiusFirst3+t.d1-o.offSetSteel_W);const c=new a.McGeVector3d(o.ptSteelSecond_Y2_无凸度.x-o.ptSteelSecond_Y1_无凸度.x,o.ptSteelSecond_Y2_无凸度.y-o.ptSteelSecond_Y1_无凸度.y),l=Math.tan(c.angleTo1(a.McGeVector3d.kXAxis)-Math.PI/2),_=Math.tan(-t.Radian_Widest_inDown),h=new a.McGePoint3d((o.ptSteelSecond_Y1_无凸度.x+o.ptSteelSecond_Y2_无凸度.x)/2,(o.ptSteelSecond_Y1_无凸度.y+o.ptSteelSecond_Y2_无凸度.y)/2,0),P=h.y-h.x*l,p=(t.O2_y.y-t.O2_y.x*_-P)/(l-_),M=l*p+P;o.Steel_O3_2_y=new a.McGePoint3d(p,M,0),o.Steel_O3_2_z=new a.McGePoint3d(-p,M,0),o.RadiusSecondSteel3=o.ptSteelSecond_Y1_无凸度.distanceTo(o.Steel_O3_2_y),o.Steel_Radian_R3=A.getArcRadianByTwoPoint(o.ptSteelSecond_Y1_无凸度,o.ptSteelSecond_Y2_无凸度,o.RadiusSecondSteel3)}o.R_HookedBar1_拱墙=E.Dia半圆弯钩直径计算(o.DiameterN12,o.DiameterN5,o.DiameterN678),o.R_HookedBar2_绑扎段=E.Dia半圆弯钩直径计算(o.DiameterN12+o.DiameterN34,o.DiameterN5,o.DiameterN678),o.R_HookedBar3_仰拱=E.Dia半圆弯钩直径计算(o.DiameterN34,o.DiameterN5,o.DiameterN678),o.Len_HookedBar1_拱墙=E.Len半圆钢筋展开段长度(o.R_HookedBar1_拱墙,e.PeiJin.IsAntiSeismic),o.Len_HookedBar2_绑扎段=E.Len半圆钢筋展开段长度(o.R_HookedBar2_绑扎段,e.PeiJin.IsAntiSeismic),o.Len_HookedBar3_仰拱=E.Len半圆钢筋展开段长度(o.R_HookedBar3_仰拱,e.PeiJin.IsAntiSeismic),e.PeiJin.IsJqjs?(o.MarkRadiusFirst1=t.RadiusFirst1+o.offSetSteel_N,o.MarkRadiusFirst2=t.RadiusFirst2+o.offSetSteel_N,o.MarkRadiusFirst3=t.RadiusFirst3+o.offSetSteel_N,o.MarkRadiusFirst4=t.RadiusFirst4+o.offSetSteel_N,o.MarkRadiusSecond1=t.RadiusSecond1-o.offSetSteel_W,o.MarkRadiusSecond2=t.RadiusSecond2-o.offSetSteel_W,o.MarkRadiusSecond3=o.RadiusSecondSteel3,o.MarkRadiusSecond4=t.RadiusSecond4-o.offSetSteel_W):(o.MarkRadiusFirst1=w.CnRound(t.RadiusFirst1,1)+o.offSetSteel_N,o.MarkRadiusFirst2=w.CnRound(t.RadiusFirst2,1)+o.offSetSteel_N,o.MarkRadiusFirst3=w.CnRound(t.RadiusFirst3,1)+o.offSetSteel_N,o.MarkRadiusFirst4=w.CnRound(t.RadiusFirst4,1)+o.offSetSteel_N,o.MarkRadiusSecond1=w.CnRound(t.RadiusSecond1,1)-o.offSetSteel_W,o.MarkRadiusSecond2=w.CnRound(t.RadiusSecond2,1)-o.offSetSteel_W,o.MarkRadiusSecond3=o.RadiusSecondSteel3,o.MarkRadiusSecond4=w.CnRound(t.RadiusSecond4,1)-o.offSetSteel_W);const s=[],d=[];for(let c=0;c<t.SizeRow;c++){const l=t.Dms[c];d[c]=[],d[c][0]=c,d[c][1]=l.RadiusFirst_Arch+o.offSetSteel_N,d[c][2]=l.RadiusSecond_Arch-o.offSetSteel_W,d[c][3]=l.RadiusFirst_Invert+o.offSetSteel_N,d[c][4]=l.RadiusSecond_Invert-o.offSetSteel_W,d[c][5]=2*t.Radian_Arch1*d[c][2],d[c][6]=2*t.Radian_Arch1*d[c][1],d[c][7]=t.Radian_Invert外*d[c][4],d[c][8]=t.Radian_Invert内*d[c][3];const _=new fn;_.W=c,_.radius_In_Arch=l.RadiusFirst_Arch+o.offSetSteel_N,_.radius_Out_Arch=l.RadiusSecond_Arch-o.offSetSteel_W,_.radius_In_Invert=l.RadiusFirst_Invert+o.offSetSteel_N,_.radius_Out_Invert=l.RadiusSecond_Invert-o.offSetSteel_W,_.length_Out_Arch=2*t.Radian_Arch1*_.radius_Out_Arch,_.length_In_Arch=2*t.Radian_Arch1*_.radius_In_Arch,_.length_Out_Invert=t.Radian_Invert外*_.radius_Out_Invert,_.length_In_Invert=t.Radian_Invert内*_.radius_In_Invert,s.push(_)}o.dmSizes=s,e.PeiJin.IsZjcyHRB400?o.SteelChar="$":o.SteelChar="^",e.PeiJin.IsN5_HRB400?o.N5SteelChar="$":o.N5SteelChar="!"}CalcSteelHotData(i){super.CalcSteelHotData(i);const n=i.Property,e=i.SteelData,o=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelCenter),0,1,!0,!0).getMcDbEntity(),s=o.getLength().val-o.getDistAtPoint(o.getClosestPointTo(o.getPointAt(o.numVerts()-2).val,!1).val).val;n.AreaLength.number1_SameThick_WallArch=Math.floor(n.AreaLength.Len_Pj_Cen_Sgfys/e.SpacingN678+.5),n.AreaLength.number3_DiffThick_Invert=Math.floor((n.AreaLength.Len_Pj_Center_全环-n.AreaLength.Len_Pj_Cen_Sgfys-s)/2/e.SpacingN678+.5),n.AreaLength.number4_SameThick_Invert=Math.floor(s/e.SpacingN678+.5),n.AreaLength.number_Around=n.AreaLength.number1_SameThick_WallArch+n.AreaLength.number3_DiffThick_Invert*2+n.AreaLength.number4_SameThick_Invert}InitColorAndCoords(i,n){i.LinData;const e=i.Property;super.InitColorAndCoords(i,n),e.FrameCoords.Pj.ptNote_TopLeft1=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+260,e.FrameCoords.Pj.ptBase1.y-180,0),e.FrameCoords.Pj.ptNote_TopLeft2=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+70,e.FrameCoords.Pj.ptBase2.y-225,0),e.FrameCoords.Pj["ptPm_TopLeftⅠ_Ⅰ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+50,e.FrameCoords.Pj.ptBase1.y-180,0),e.FrameCoords.Pj["ptPm_TopLeftⅡ_Ⅱ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+50,e.FrameCoords.Pj.ptBase1.y-240,0),e.FrameCoords.Pj["ptPm_TopLeftⅢ_Ⅲ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+150,e.FrameCoords.Pj.ptBase1.y-180,0),e.FrameCoords.Pj["ptPm_TopLeftⅣ_Ⅳ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+150,e.FrameCoords.Pj.ptBase1.y-240,0),e.FrameCoords.Pj.ptDetail_VerticalBarLeft=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+70,e.FrameCoords.Pj.ptBase2.y-30,0),e.FrameCoords.Pj.ptDetail_SameThick_Arch=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+73,e.FrameCoords.Pj.ptBase2.y-45,0),e.FrameCoords.Pj.ptDetail_DiffThick_Invert=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+73,e.FrameCoords.Pj.ptBase2.y-65,0),e.FrameCoords.Pj.ptDetail_SameThick_Invert=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+73,e.FrameCoords.Pj.ptBase2.y-85,0),e.FrameCoords.Pj.ptDetail_VerticalBarLeft=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+70,e.FrameCoords.Pj.ptBase2.y-30,0),e.FrameCoords.Pj.ptDetail_HookBarTitleTopMid=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+102-12.5,e.FrameCoords.Pj.ptBase2.y-105,0),e.FrameCoords.Pj.ptDetail_SemiHookRightDown=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+200,e.FrameCoords.Pj.ptBase2.y-40,0),e.FrameCoords.Pj.ptDetail_StraightHookRightDown=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+200,e.FrameCoords.Pj.ptBase2.y-110,0),e.FrameCoords.Pj.ptTable_DmccTopMid=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+315,e.FrameCoords.Pj.ptBase2.y-40,0)}}const ai=[["衬砌图号","衬砌图大图名","衬砌图小图名","绘图日期","轨道类型","d1-拱墙衬砌厚度","t1-拱墙预留变形","m1-拱墙初支厚度","d2-仰拱衬砌厚度","t2-仰拱预留变形","m2-仰拱初支厚度","锚杆纵向间距","左拱部-环向间距","左拱部-锚杆长度","右拱部-环向间距","右拱部-锚杆长度","左边墙-环向间距","左边墙-锚杆长度","右边墙-环向间距","右边墙-锚杆长度","Ly-仰拱锚杆长度","Bw-钢筋网网格间距","Fwi-钢筋网直径(mm)","Pw-钢筋网设置部位","Pm-锚杆设置部位","拱墙仰拱砼材料","喷砼材料","图号(钢筋图一)","小图名(钢筋图一)","图名(钢筋图二)","小图号(钢筋图二)","拱墙主筋直径","仰拱主筋直径","主筋间距","纵向筋直径","钩筋直径","钩筋间距","靠初支侧保护层","靠内侧保护层","图号(钢架图一)","小图名(钢架图一)","图号(钢架图二)","小图名(钢架图二)",'钢架型号(双层以"/"隔开)',"设置部位","初喷厚度","仰拱D单元角度","钢架预留变形量","锁脚类型(锚杆/锚管)","锁脚长度","适用段落"],["***-14-3","200双线","200双线","2026.09","有砟","45","10~20","23","50","10~20","23","120","120","350","150","400","150","350","120","350","0","20","6","拱墙","拱墙","C36混凝土","C25喷混凝土","**-14-3","Ⅴ级围岩Ⅴ[c]型衬砌钢筋图(一)","**-14-4","Ⅴ级围岩Ⅴ[c]型衬砌钢筋图(二)","18","18","250","10","8","250","55","55","a","b","c","d","I18","全环","4","16","10","锚管","450","IV级围岩深埋地段"]],ci=[["DL160-350","版本:2026.4.21","r2-拱腰内轮廓半径","r3-第2段圆弧半径","A1-拱顶圆心角的一半","A2-拱部范围角度","H1-内轨至O2的高度","H2-路基面至内轨面","H3-水沟底至盖板顶的高度","H4-施工缝距内轨的高度(轨下为负)","H5-内轨至r3上端点高度(轨下为负)","H6-内轨至侧沟盖板顶(轨下为负)","a-断面中0加宽时的a值,圆心与圆弧在断面中线同侧为正值","b-断面中线至r3,r4交点的水平距离","d-线间距(0加宽时)","b1-z-左侧沟槽内侧边至断面中线距离","b1-y-右侧沟槽边至断面中线距离","最大加宽值","当前绘图加宽","H7-最宽至直边高度","H8-内轨至边墙小平台"],["所有输入数据为0加宽时的值,除钢筋直径、间距以mm计外,其余都以cm计","2020.05","594","230","60","144","206.5","51.5","82","22","30","30","7.8282888","430.7168309","440","440","440","80","80","160","130"]];let we=class{static ReadDmcc(i,n){try{const e=new a.McDbXlsxTable;e.setFromArray(ci);const t=new kt;return t.RadiusFirst2=w.ToDouble(e.getCellTextValue(n,2)),t.RadiusFirst3=w.ToDouble(e.getCellTextValue(n,3)),t.Angle1=w.ToDouble(e.getCellTextValue(n,4)),t.Angle_Gb=w.ToDouble(e.getCellTextValue(n,5)),t.H_ngToWidest=w.ToDouble(e.getCellTextValue(n,6)),t.H_ngToLjm=w.ToDouble(e.getCellTextValue(n,7)),t.H_sgdToGb=w.ToDouble(e.getCellTextValue(n,8)),t.H_ngToSgf=w.ToDouble(e.getCellTextValue(n,9)),t.H_ngToNearSgArcTopPoint=w.ToDouble(e.getCellTextValue(n,10)),t.H_ngToGb=w.ToDouble(e.getCellTextValue(n,11)),t.a=w.ToDouble(e.getCellTextValue(n,12)),t.b=w.ToDouble(e.getCellTextValue(n,13)),t.d=w.ToDouble(e.getCellTextValue(n,14)),t.b1_z=w.ToDouble(e.getCellTextValue(n,15)),t.b1_y=w.ToDouble(e.getCellTextValue(n,16)),t.Wmax=w.ToDouble(e.getCellTextValue(n,17)),t.Wcur=w.ToDouble(e.getCellTextValue(n,18)),t.H_zkToZb=w.ToDouble(e.getCellTextValue(n,19)),t.H_ngToBqpt=w.ToDouble(e.getCellTextValue(n,20)),t}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码201 ReadDmcc",e),null}}static ReadZhcs(i,n){try{const e=new ne;return e.d1_Gqcqhd=w.ToDouble(i.getCellTextValue(n,5)),e.t1_Gqylbx=i.getCellTextValue(n,6).trim(),e.m1_Gqczhd=w.ToDouble(i.getCellTextValue(n,7)),e.d2_Ygcqhd=w.ToDouble(i.getCellTextValue(n,8)),e.t2_Ygylbx=i.getCellTextValue(n,9).trim(),e.m2_Ygczhd=w.ToDouble(i.getCellTextValue(n,10)),e.Dz_Mgzxjj=w.ToDouble(i.getCellTextValue(n,11)),e.Dh_mgyxjj_左拱部=w.ToDouble(i.getCellTextValue(n,12)),e.Lg_Gbmgcd_左拱部=w.ToDouble(i.getCellTextValue(n,13)),e.Dh_mgyxjj_右拱部=w.ToDouble(i.getCellTextValue(n,14)),e.Lg_Gbmgcd_右拱部=w.ToDouble(i.getCellTextValue(n,15)),e.Dh_mgyxjj_左边墙=w.ToDouble(i.getCellTextValue(n,16)),e.Lb_Bqmgcd_左边墙=w.ToDouble(i.getCellTextValue(n,17)),e.Dh_mgyxjj_右边墙=w.ToDouble(i.getCellTextValue(n,18)),e.Lb_Bqmgcd_右边墙=w.ToDouble(i.getCellTextValue(n,19)),e.Ly_Ygmgcd=w.ToDouble(i.getCellTextValue(n,20)),e.Bw_Wpjj=w.ToDouble(i.getCellTextValue(n,21)),e.Fwi_wpzj=w.ToDouble(i.getCellTextValue(n,22)),i.getCellTextValue(n,23).trim()=="全环"?e.Wpbw=W.Qh:i.getCellTextValue(n,23).trim()=="拱墙"?e.Wpbw=W.Gq:i.getCellTextValue(n,23).trim()=="拱部"||i.getCellTextValue(n,23).trim()=="拱部局部"?e.Wpbw=W.Gb:e.Wpbw=W.No,i.getCellTextValue(n,24).trim()=="全环"?e.Mgbw=W.Qh:i.getCellTextValue(n,24).trim()=="拱墙"?e.Mgbw=W.Gq:i.getCellTextValue(n,24).trim()=="拱部"||i.getCellTextValue(n,24).trim()=="拱部局部"?e.Mgbw=W.Gb:e.Mgbw=W.No,e}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码202 ReadZhcs",e),null}}static ReadJzcl(i,n){try{const e=new te;return e.Hntcl=i.getCellTextValue(n,25).trim(),e.Phntcl=i.getCellTextValue(n,26).trim(),e}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码203 ReadJzcl",e),null}}static ReadSydl(i,n){try{const e=new ee;return e.Dl=i.getCellTextValue(n,49).trim(),e}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码203 ReadSydl",e),null}}},Wn=class{static ReadGjtk(i,n){try{const e=new Wt;return e.Th1=i.getCellTextValue(n,39).trim(),e.Tm1=i.getCellTextValue(n,40).trim(),e.Th2=i.getCellTextValue(n,41).trim(),e.Tm2=i.getCellTextValue(n,42).trim(),e}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码204 ReadPjcs",e),null}}static ReadGjcs(i,n){try{const e=new Yt;if(i.getCellTextValue(n,43).trim().includes("/")){const t=i.getCellTextValue(n,43).trim().split("/");e.GjXh1=t[0],e.GjXh2=t[1]}else e.GjXh1=i.getCellTextValue(n,43).trim();return i.getCellTextValue(n,43).trim().includes("I")?e.Gj_style=ut.GZGJ:i.getCellTextValue(n,43).trim().includes("HW")?e.Gj_style=ut.HWGJ:i.getCellTextValue(n,43).trim().includes("G")&&(e.Gj_style=ut.GSGJ4),i.getCellTextValue(n,44).trim()=="拱墙"?e.IsGq=!0:i.getCellTextValue(n,44).trim()=="全环"&&(e.IsGq=!1),e.Thick=it.GJ_H(e.GjXh1),e.GjXh2!=""&&(e.Thick2=it.GJ_H(e.GjXh2)),e.Thick_Cp=w.ToDouble(i.getCellTextValue(n,45).trim()),e.AngleOfE=w.ToDouble(i.getCellTextValue(n,46).trim()),e.Ylbx_Gq=w.ToDouble(i.getCellTextValue(n,47).trim()),e.Len_Sjmg=w.ToDouble(i.getCellTextValue(n,48).trim()),e.Ylbx_Yg=jt.MidYlbx(i.getCellTextValue(n,9).trim()),e}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码204 ReadPjcs",e),null}}},Zn=class{static ReadPjtk(i,n){try{const e=new oe;return e.Th1=i.getCellTextValue(n,27).trim(),e.Tm1=i.getCellTextValue(n,28).trim(),e.Th2=i.getCellTextValue(n,29).trim(),e.Tm2=i.getCellTextValue(n,30).trim(),e}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码204 ReadPjcs",e),null}}static ReadPjcs(i,n){try{const e=new ge;return e.DiameterN12=w.ToDouble(i.getCellTextValue(n,31).trim()),e.DiameterN34=w.ToDouble(i.getCellTextValue(n,32).trim()),e.SpacingN1234=w.ToDouble(i.getCellTextValue(n,33).trim())/100,e.DiameterN5=w.ToDouble(i.getCellTextValue(n,34).trim()),e.DiameterN678=w.ToDouble(i.getCellTextValue(n,35).trim()),e.SpacingN678=w.ToDouble(i.getCellTextValue(n,36).trim())/100,e.TProtectiveCover_W=w.ToDouble(i.getCellTextValue(n,37).trim()),e.TProtectiveCover_N=w.ToDouble(i.getCellTextValue(n,38).trim()),e}catch(e){return console.error("读取第"+n.toString()+"行数据出错,错误代码204 ReadPjcs",e),null}}},di=class extends ke{CalculateCoordinatesFirst(i){const n=i.LinData,e=i.Property;let t=new Map;const o=r.PolarPoint(n.O2_y,Math.PI/2-n.Radian_Arch1,n.RadiusFirst2),s=n.b_0+n.w/2,d=n.O3_1_y.y-Math.sqrt(Math.pow(n.RadiusFirst3,2)-Math.pow(s-n.O3_1_y.x,2)),c=new a.McGePoint3d(s,d,0),l=r.PolarPoint(n.O2_y,-n.Radian_Widest_inDown,n.RadiusFirst2);let _=new a.McGePoint3d(c.x,c.y,Math.tan(n.Radian_NearSgArc内/4)),h=new a.McGePoint3d(l.x,l.y,Math.tan(n.Radian_Widest_inAll/4));const P=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_Arch1/2)),u=new a.McGePoint3d(-o.x,o.y,Math.tan(n.Radian_Widest_inAll/4)),p=new a.McGePoint3d(-l.x,l.y,Math.tan(n.Radian_NearSgArc内/4)),M=new a.McGePoint3d(-c.x,c.y,Math.tan(n.Radian_Invert内/4));let g=[];g.push(_),g.push(h),g.push(P),g.push(u),g.push(p),g.push(M),g.push(_);const C=A.AreaOfPolyline(g,!0,!0);t.set("ptFirst_Y2",_),t.set("ptFirst_Y3",h),t.set("ptFirst_Y4",P),t.set("ptFirst_Z4",u),t.set("ptFirst_Z3",p),t.set("ptFirst_Z2",M),t.set("100ptFirst1",_);const y=A.AreaOfPolyline(g,!0,!0),F=C-y;return e.SteelCalcData.AreaOf错台量=F,t}CalculateCoordinatesSecond(i){i.Data;const n=i.Setting,e=i.LinData,t=new Map;let o,s;if(n.ChenQi.Cqdm.Wlkxq){const p=r.PolarPoint(e.O_Invert,-e.Radian_Widest_inDown,e.RadiusSecond4);s=r.PolarPoint(e.O3_1_y,-e.Radian_Widest_inDown,e.RadiusFirst3+e.d1),o=A.IntsOfLineToCircle5P(e.O_Invert,e.RadiusSecond4,p,s,"MinY")}else o=r.PolarPoint(e.O3_1_y,-e.Radian_Widest_inDown-e.Radian_NearSgArc内,e.RadiusFirst3+e.d2),s=r.PolarPoint(e.O3_1_y,-e.Radian_Widest_inDown,e.RadiusFirst3+e.d1);const d=r.PolarPoint(e.O2_y,Math.PI/2-e.Radian_Arch1,e.RadiusSecond2),c=new a.McGePoint3d(o.x,o.y,Math.tan(e.Radian_NearSgArc外/4)),l=new a.McGePoint3d(s.x,s.y,Math.tan(e.Radian_Widest_inAll/4)),_=new a.McGePoint3d(d.x,d.y,Math.tan(e.Radian_Arch1/2)),h=new a.McGePoint3d(-_.x,_.y,Math.tan(e.Radian_Widest_inAll/4)),P=new a.McGePoint3d(-l.x,l.y,Math.tan(e.Radian_NearSgArc外/4)),u=new a.McGePoint3d(-c.x,c.y,Math.tan(e.Radian_Invert外/4));return t.set("ptSecond_Y2",c),t.set("ptSecond_Y3",l),t.set("ptSecond_Y4",_),t.set("ptSecond_Z4",h),t.set("ptSecond_Z3",P),t.set("ptSecond_Z2",u),t.set("100ptSecond1",c),t}CalculateCoordinatesThird_Ylbx_Gq(i){i.Data,i.Setting;const n=i.LinData,e=new Map,t=r.PolarPoint(n.O2_y_p,-n.Radian_Widest_inDown,n.RadiusThird2),o=r.PolarPoint(n.O2_y_p,Math.PI/2-n.Radian_Arch1,n.RadiusThird2),s=Math.tan(Math.PI/2-n.Radian_Widest_outDown);t.y-s*t.x;const d=A.IntsOfLineToCircle5P(n.O3_2_y_p,n.RadiusSecond3+n.ylbx_Gq,new a.McGePoint3d(0,-n.H_ngToBqpt,0),new a.McGePoint3d(1,-n.H_ngToBqpt,0),"MaxX"),c=A.getArcRadianByTwoPoint(d,t,n.RadiusSecond3+n.ylbx_Gq),l=new a.McGePoint3d(d.x,d.y,Math.tan(c/4)),_=new a.McGePoint3d(t.x,t.y,Math.tan(n.Radian_Widest_inAll/4)),h=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_Arch1/2)),P=new a.McGePoint3d(-h.x,h.y,Math.tan(n.Radian_Widest_inAll/4)),u=new a.McGePoint3d(-_.x,_.y,Math.tan(c/4)),p=new a.McGePoint3d(-l.x,l.y,0);return e.set("ptThird_Y2",l),e.set("ptThird_Y3",_),e.set("ptThird_Y4",h),e.set("ptThird_Z4",P),e.set("ptThird_Z3",u),e.set("ptThird_Z2",p),e}CalculateCoordinatesThird_Ylbx_Yg(i){i.Data,i.Setting;const n=i.LinData,e=new Map,t=A.IntsOfLineToCircle5P(n.O3_2_z,n.RadiusThird3,new a.McGePoint3d(0,-n.H_ngToBqpt,0),new a.McGePoint3d(1,-n.H_ngToBqpt,0),"MinX"),o=r.PolarPoint(n.O_Invert,Math.PI*3/2-n.Radian_Invert外/2,n.RadiusThird4),s=A.getArcRadianByTwoPoint(t,o,n.RadiusThird3),d=new a.McGePoint3d(t.x,t.y,Math.tan(s/4)),c=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_Invert外/4)),l=new a.McGePoint3d(-o.x,o.y,Math.tan(s/4)),_=new a.McGePoint3d(-t.x,t.y,0);return e.set("pt5th1",d),e.set("pt5th2",c),e.set("pt5th3",l),e.set("pt5th4",_),e}CalculateCoordinatesFourth(i){i.Data,i.Setting;const n=i.LinData,e=new Map,t=n.O3_2_y.x+Math.sqrt(Math.pow(n.RadiusSecond3,2)-Math.pow(-n.H_ngToBqpt-n.O3_2_y.y,2)),o=r.PolarPoint(n.O2_y_p,-n.Radian_Widest_outDown,n.RadiusFourth2),s=r.PolarPoint(n.O2_y_p,Math.PI/2-n.Radian_Arch1,n.RadiusFourth2),d=Math.tan(Math.PI/2-n.Radian_Widest_outDown),c=o.y-d*o.x,l=new a.McGePoint3d(t,-n.H_ngToBqpt,0),_=new a.McGePoint3d((-n.H_ngToBqpt-c)/d,-n.H_ngToBqpt,0),h=new a.McGePoint3d(o.x,o.y,Math.tan((n.Radian_Widest_outDown+Math.PI/2-n.Radian_Arch1)/4)),P=new a.McGePoint3d(s.x,s.y,Math.tan(n.Radian_Arch1/2)),u=new a.McGePoint3d(-P.x,P.y,Math.tan((n.Radian_Widest_outDown+Math.PI/2-n.Radian_Arch1)/4)),p=new a.McGePoint3d(-h.x,h.y,0),M=new a.McGePoint3d(-_.x,_.y,0),g=new a.McGePoint3d(-l.x,l.y,0);return e.set("ptForth_Y1",l),e.set("ptForth_Y2",_),e.set("ptForth_Y3",h),e.set("ptForth_Y4",P),e.set("ptForth_Z4",u),e.set("ptForth_Z3",p),e.set("ptForth_Z2",M),e.set("ptForth_Z1",g),e}CalculateCoordinatesFourth_Yg(i){i.Data,i.Setting;const n=i.LinData,e=new Map,t=A.IntsOfLineToCircle5P(n.O3_2_z,n.RadiusFourth3,new a.McGePoint3d(0,-n.H_ngToBqpt,0),new a.McGePoint3d(1,-n.H_ngToBqpt,0),"MinX"),o=r.PolarPoint(n.O_Invert,Math.PI*3/2-n.Radian_Invert外/2,n.RadiusFourth4),s=A.getArcRadianByTwoPoint(t,o,n.RadiusFourth3),d=new a.McGePoint3d(t.x,t.y,Math.tan(s/4)),c=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_Invert外/4)),l=new a.McGePoint3d(-o.x,o.y,Math.tan(s/4)),_=new a.McGePoint3d(-t.x,t.y,0);return e.set("pt5th1",d),e.set("pt5th2",c),e.set("pt5th3",l),e.set("pt5th4",_),e}},li=class extends Ye{DrawMg_Gq(i){const n=i.Property,e=i.LinData,t=n.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y3"),o=n.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y2");let s=new a.McGePoint3d;e.AngleGb>=e.Angle1*2?s=r.PolarPoint(e.O2_y,Math.PI/2-e.AngleGb/2/180*Math.PI,e.RadiusFourth2):s=r.PolarPoint(e.O1,Math.PI/2-e.AngleGb/2/180*Math.PI,e.RadiusFourth1),super.DrawArchWallRockBolt(i,e,t,o,s)}},_i=class extends We{DimLine(i){i.Data;const n=i.Setting,e=i.Property,t=i.LinData,o=[];try{const s=new a.McGePoint3d(0,0,0),d=r.PolarPoint(t.O2_z_p,Math.PI,t.RadiusFourth2),c=r.PolarPoint(t.O2_y_p,0,t.RadiusFourth2),l=r.PolarPoint(t.O2_z,Math.PI,t.RadiusFirst2),_=r.PolarPoint(t.O2_y,0,t.RadiusFirst2),h=r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth4),P=r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusSecond4),u=r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFirst4),p=r.PolarPoint(t.O1,Math.PI/2,t.RadiusFirst1),M=r.PolarPoint(t.O1,Math.PI/2,t.RadiusSecond1),g=r.PolarPoint(t.O1_p,Math.PI/2,t.RadiusFourth1),C=new a.McGePoint3d(-20,-(t.H_ngToBqpt+2),0),y=r.PolarPoint(C,0,10),F=new a.McGePoint3d(-C.x,C.y,0),I=new a.McGePoint3d(-y.x,y.y,0),T=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z2"),R=e.ContourPoints.Cq.DicForth_Yg.get("pt5th1");if(t.railStyle==="有砟"){const f=new a.McGePoint3d(0,-t.dblHeight2,0);o.push(r.AddDimRotated5PScale(Math.PI/2,s,f,r.PolarPoint(s,0,10),10));const G=new a.McGePoint3d(-t.b1_z,-t.dblHeight1,0);o.push(r.AddDimRotated5PScale(Math.PI/2,G,r.PolarPoint(G,Math.PI/2,t.dblHeight1),r.PolarPoint(new a.McGePoint3d(-t.b1_z,3,0),0,5),10))}else{const f=new a.McGePoint3d(-t.d/2,0,0),G=new a.McGePoint3d(-t.d/2,-t.H_ngToLjm,0),O=new a.McGePoint3d(f.x+5,-t.H_ngToLjm/2,0);o.push(r.AddDimRotated5PScale(Math.PI/2,f,G,O,10))}o.push(r.AddDimRotated5PScale(Math.PI/2,P,u,r.PolarPoint(u,0,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,p,M,r.PolarPoint(M,0,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,M,g,r.PolarPoint(g,0,t.a+t.RadiusFourth2+10),10)),t.m2!==0&&o.push(r.AddDimRotated5PScale(Math.PI/2,h,P,r.PolarPoint(h,0,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,e.KeyPoint.ptEnd左,T,r.PolarPoint(s,Math.PI,t.a+t.RadiusFourth2+5),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,e.KeyPoint.ptEnd左,r.PolarPoint(d,Math.PI*3/2,t.H_zkToZb),r.PolarPoint(s,Math.PI,t.a+t.RadiusFourth2+5),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,d,r.PolarPoint(d,Math.PI*3/2,t.H_zkToZb),r.PolarPoint(s,Math.PI,t.a+t.RadiusFourth2+5),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,t.O3_1_z,s,r.PolarPoint(t.O3_1_z,0,5),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,t.O3_2_y,s,r.PolarPoint(t.O3_2_y,Math.PI,5),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,t.O2_z,s,r.PolarPoint(t.O2_z,Math.PI,5),10)),o.push(r.AddDimRotated5PScale(Math.PI,d,T,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth4+10),10)),o.push(r.AddDimRotated5PScale(Math.PI,T,R,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth4+10),10)),o.push(r.AddDimRotated5PScale(Math.PI,R,e.KeyPoint.ptStart左,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth4+10),10)),o.push(r.AddDimRotated5PScale(Math.PI,e.KeyPoint.ptStart左,new a.McGePoint3d(-(t.a-t.a_0)-t.d/2+t.RailCenterOffset,0,0),r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth4+10),10));const L=10*(t.b1_y_0+t.b1_z_0-t.d)/2;o.push(r.AddDimRotated6PNoDimLine(Math.PI,new a.McGePoint3d(-(t.a-t.a_0)-t.d/2+t.RailCenterOffset,0,0),new a.McGePoint3d(t.a-t.a_0+t.d/2+t.RailCenterOffset,0,0),r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth4+10),"d")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,e.KeyPoint.ptStart右,new a.McGePoint3d(t.a-t.a_0+t.d/2+t.RailCenterOffset,0,0),r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth4+10),(10*t.d).toFixed(0)+"+W-d+"+L.toFixed(0))),o.push(r.AddDimRotated5PScale(Math.PI,e.KeyPoint.ptStart右,c,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth4+10),10)),o.push(r.AddDimRotated5PScale(Math.PI,e.KeyPoint.ptStart左,e.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth4),10)),o.push(r.AddDimRotated5PScale(Math.PI,new a.McGePoint3d(t.b1_y,3,0),e.KeyPoint.ptEnd右,r.PolarPoint(new a.McGePoint3d(t.b1_y,3,0),Math.PI/2,e.TextHeight.Height_Ht),10)),o.push(r.AddDimRotated5PScale(Math.PI,new a.McGePoint3d(-t.b1_z,3,0),e.KeyPoint.ptEnd左,r.PolarPoint(new a.McGePoint3d(t.b1_y,3,0),Math.PI/2,e.TextHeight.Height_Ht),10)),o.push(r.AddDimRotated5PScale(Math.PI,l,r.PolarPoint(l,Math.PI,t.d1),l,10)),o.push(r.AddDimRotated5PScale(Math.PI,_,r.PolarPoint(_,0,t.d1),_,10)),n.ChenQi.Cqdm.MarkCur?(o.push(r.AddDimRotated5PScale(Math.PI/2,s,u,r.PolarPoint(s,0,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,s,p,r.PolarPoint(p,0,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,s,t.O1,r.PolarPoint(t.O1,0,10),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,h,g,r.PolarPoint(s,0,t.a+t.RadiusFourth2+20),10)),o.push(r.AddDimRotated5PScale(Math.PI/2,t.O_Invert,new a.McGePoint3d(-t.b1_z,0,0),r.PolarPoint(s,Math.PI,t.a+t.RadiusFourth2+10),10)),o.push(r.AddDimRotated5PScale(Math.PI,l,new a.McGePoint3d(0,t.O2_z.y,0),r.PolarPoint(l,Math.PI/2,0),10)),o.push(r.AddDimRotated5PScale(Math.PI,_,new a.McGePoint3d(0,t.O2_y.y,0),r.PolarPoint(_,Math.PI/2,0),10)),o.push(r.AddDimRotated5PScale(Math.PI,new a.McGePoint3d(-e.KeyPoint.ptEnd左.x,e.KeyPoint.ptEnd左.y,0),s,r.PolarPoint(t.O2_y,Math.PI*3/2,8),10)),o.push(r.AddDimRotated5PScale(Math.PI,s,e.KeyPoint.ptEnd左,r.PolarPoint(t.O2_z,Math.PI*3/2,8),10)),o.push(r.AddDimRotated5PScale(Math.PI,d,c,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth4+15),10)),o.push(r.AddDimRotated5PScale(Math.PI,t.O1,t.O2_z,r.PolarPoint(t.O1,Math.PI*3/2,4),10))):(o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,s,u,r.PolarPoint(s,0,t.a+t.RadiusFourth2+10),"h[2]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,s,p,r.PolarPoint(p,0,t.a+t.RadiusFourth2+10),"h")),o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,s,t.O1,r.PolarPoint(t.O1,0,10),"h[1]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,h,g,r.PolarPoint(s,0,t.a+t.RadiusFourth2+20),"H")),o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,t.O_Invert,new a.McGePoint3d(-t.b1_z,0,0),r.PolarPoint(s,Math.PI,t.a+t.RadiusFourth2+10),"h[3]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,l,new a.McGePoint3d(0,t.O2_z.y,0),r.PolarPoint(l,Math.PI/2,0),"b[1]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,_,new a.McGePoint3d(0,t.O2_y.y,0),r.PolarPoint(_,Math.PI/2,0),"b[1]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,new a.McGePoint3d(-e.KeyPoint.ptEnd左.x,e.KeyPoint.ptEnd左.y,0),s,r.PolarPoint(t.O2_y,Math.PI*3/2,8),"b[2]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,s,e.KeyPoint.ptEnd左,r.PolarPoint(t.O2_z,Math.PI*3/2,8),"b[2]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,d,c,r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFourth4+15),"B")),o.push(r.AddDimRotated6PNoDimLine(Math.PI,t.O1,t.O2_z,r.PolarPoint(t.O1,Math.PI*3/2,4),"a"))),e.EntityIds.DicLinIdCol.set("DimLine",o)}catch(s){console.log("错误代码 1201","提示",s)}}DimAngle(i){const n=i.Property,e=i.LinData,t=[];try{{let o=0,s=0;e.RadiusFirst2<e.RadiusFirst1?(s=20,o=s+Math.abs(e.RadiusFirst1-e.RadiusFirst2)):(o=20,s=o+Math.abs(e.RadiusFirst1-e.RadiusFirst2));const d=new a.McGePoint3d(0,0,0),c=r.PolarPoint(e.O2_z,Math.PI,e.RadiusFourth2),l=r.PolarPoint(e.O2_y,0,e.RadiusFourth2),_=r.PolarPoint(e.O2_z,Math.PI,e.RadiusFirst2),h=r.PolarPoint(e.O2_y,0,e.RadiusFirst2),P=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFourth4),u=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusSecond4),p=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFirst4),M=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFirst1),g=r.PolarPoint(e.O1,Math.PI/2,e.RadiusSecond1),C=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFourth1),y=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y2"),F=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y3"),I=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y4"),T=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),R=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z3"),L=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),f=n.ContourPoints.Cq.DicSecond.get("ptSecond_Y2");t.push(r.add3PLineAngular(e.O1,M,T,o,d,"",!0)),t.push(r.add3PLineAngular(e.O1,M,I,o,d,"",!0)),t.push(r.add3PLineAngular(e.O2_z,T,R,s,d,"",!0)),t.push(r.add3PLineAngular(e.O_Invert,y,L,e.RadiusFirst4/3,d,"",!0));const G=r.PolarPoint(r.PolarPoint(e.O3_2_y,-e.Radian_Widest_inDown-e.Radian_NearSgArc外/2,e.RadiusFirst3/2),Math.PI/2,30);t.push(r.add3PLineAngular(e.O3_2_y,F,f,e.RadiusFirst3/3,G,"",!0));const O=r.PolarPoint(r.PolarPoint(e.O3_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusFirst3/2),Math.PI/2,30);t.push(r.add3PLineAngular(e.O3_1_z,R,L,e.RadiusFirst3/3,O,"",!0)),n.EntityIds.DicLinIdCol.set("DimAngle",t)}}catch(o){console.log("错误代码 1202","提示",o)}}DimCenter(i){i.Data,i.Setting;const n=i.Property,e=i.LinData;try{let t=[];t=m.JoinIdCol(t,m.CenterPoint4P(e.O1,new a.McGePoint3d(e.O1.x,e.O1.y-3,0),"O1",n.TextHeight.Height_Ht)),e.IsCircular?e.d1!==e.d2&&(t=m.JoinIdCol(t,m.CenterPoint4P(e.O3_2_z,new a.McGePoint3d(e.O3_2_z.x-2,e.O3_2_z.y+3,0),"O2",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O3_2_y,new a.McGePoint3d(e.O3_2_y.x+1,e.O3_2_y.y,0),"O2",n.TextHeight.Height_Ht))):(t=m.JoinIdCol(t,m.CenterPoint4P(e.O2_y,new a.McGePoint3d(e.O2_y.x,e.O2_y.y+2,0),"O2",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O2_z,new a.McGePoint3d(e.O2_z.x-3,e.O2_z.y+2,0),"O2",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O3_1_y,new a.McGePoint3d(e.O3_1_y.x-4,e.O3_1_y.y,0),"O3",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O3_1_z,new a.McGePoint3d(e.O3_1_z.x+1,e.O3_1_z.y,0),"O3",n.TextHeight.Height_Ht)),t=m.JoinIdCol(t,m.CenterPoint4P(e.O_Invert,e.O_Invert,"O4",n.TextHeight.Height_Ht))),n.EntityIds.DicLinIdCol.set("DimCenter",t)}catch(t){console.log("错误代码 1204","提示",t)}}DimRadius(i){i.Data;const n=i.Setting,e=i.Property,t=i.LinData,o=[],s=a.MxCpp.mxcad.getSysVarDouble("LTSCALE");try{const d=e.ContourPoints.Cq.DicFirst.get("ptFirst_Y2"),c=new a.McGePoint3d(e.ContourPoints.Cq.DicFirst.get("ptFirst_Y3").x,e.ContourPoints.Cq.DicFirst.get("ptFirst_Y3").y,0),l=new a.McGePoint3d(e.ContourPoints.Cq.DicFirst.get("ptFirst_Y4").x,e.ContourPoints.Cq.DicFirst.get("ptFirst_Y4").y,0),_=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),h=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z3"),P=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),u=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y2"),p=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y3"),M=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y4"),g=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z4"),C=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z3"),y=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z2"),F=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y3"),I=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y4"),T=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z4"),R=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z3"),L=r.PolarPoint(t.O_Invert,275/180*Math.PI,t.RadiusFirst3),f=r.PolarPoint(t.O_Invert,275/180*Math.PI,t.RadiusFirst3-13),G=r.GetDipAngle(t.O2_y,l),O=r.GetDipAngle(_,t.O2_z),b=r.GetDipAngle(h,t.O3_1_z),H=r.GetDipAngle(y,t.O3_2_z),x=r.GetDipAngle(t.O3_2_y,u),j=r.GetDipAngle(t.O3_1_y,p),N=r.GetDipAngle(P,t.O_Invert);o.push(r.AddLeader2P(c,t.O3_1_y)),o.push(r.AddLeader2P(p,t.O3_1_y)),o.push(r.AddLeader2P(l,t.O2_y)),o.push(r.AddLeader2P(M,t.O1)),n.ChenQi.Tssz.X_Offset!==0||n.ChenQi.Tssz.Y_Offset!==0?(o.push(r.addLine(t.O2_y_p,r.PolarPoint(t.O2_y_p,0,t.RadiusFourth2),10,"DASHED",.3/s)),o.push(r.addLine(t.O2_z_p,r.PolarPoint(t.O2_z_p,Math.PI,t.RadiusFourth2),10,"DASHED",.3/s)),o.push(r.AddLeader2P(I,t.O2_y_p)),o.push(r.AddLeader2P(T,t.O2_z_p)),o.push(r.addLine(R,t.O2_z_p,10,"DASHED",.3/s)),o.push(r.addLine(F,t.O2_y_p,10,"DASHED",.3/s)),o.push(r.addLine(t.O1_p,t.O2_z_p,10,"DASHED",.3/s)),o.push(r.addLine(t.O1_p,t.O2_y_p,10,"DASHED",.3/s)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(_,t.O2_z,.18),O+Math.PI/2,1),"r2="+(10*t.RadiusFirst2).toFixed(0)+",R2="+(10*t.RadiusSecond2).toFixed(0),e.TextHeight.Height_Ht,0,.7,O)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(_,t.O2_z,.25),O+Math.PI/2,-4.5),"R2”="+(10*t.RadiusFourth2).toFixed(0),e.TextHeight.Height_Ht,0,.7,O)),n.ChenQi.Cqdm.MarkCur?(o.push(r.addText6P(r.PolarPoint(r.PointOnline(l,t.O2_y,.45),G+Math.PI/2,1),"r1="+(10*t.RadiusFirst1).toFixed(0)+",R1="+(10*t.RadiusSecond1).toFixed(0),e.TextHeight.Height_Ht,0,.7,G)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(l,t.O2_y,.45),G+Math.PI/2,-4.5),"R1”="+(10*t.RadiusFourth1).toFixed(0),e.TextHeight.Height_Ht,0,.7,G))):(o.push(r.addText6P(r.PolarPoint(r.PointOnline(l,t.O2_y,.25),G+Math.PI/2,1),"r1,R1",e.TextHeight.Height_Ht,0,.7,G)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(l,t.O2_y,.25),G+Math.PI/2,-4.5),"R1”",e.TextHeight.Height_Ht,0,.7,G)))):(o.push(r.addText6P(r.PolarPoint(r.PointOnline(_,t.O2_z,.25),O+Math.PI/2,1),"r2="+(10*t.RadiusFirst2).toFixed(0),e.TextHeight.Height_Ht,0,.7,O)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(_,t.O2_z,.25),O+Math.PI/2,-4.5),"R2="+(10*t.RadiusSecond2).toFixed(0),e.TextHeight.Height_Ht,0,.7,O)),n.ChenQi.Cqdm.MarkCur?(o.push(r.addText6P(r.PolarPoint(r.PointOnline(l,t.O2_y,.45),G+Math.PI/2,1),"r1="+(10*t.RadiusFirst1).toFixed(0),e.TextHeight.Height_Ht,0,.7,G)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(l,t.O2_y,.45),G+Math.PI/2,-4.5),"R1="+(10*t.RadiusSecond1).toFixed(0),e.TextHeight.Height_Ht,0,.7,G))):(o.push(r.addText6P(r.PolarPoint(r.PointOnline(l,t.O2_y,.25),G+Math.PI/2,1),"r1",e.TextHeight.Height_Ht,0,.7,G)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(l,t.O2_y,.25),G+Math.PI/2,-4.5),"R1",e.TextHeight.Height_Ht,0,.7,G)))),t.IsCircular?(o.push(r.AddLeader2P(e.KeyPoint.ptEnd右,t.O1)),o.push(r.AddLeader2P(e.KeyPoint.ptEnd左,t.O1)),t.d1!==t.d2&&(o.push(r.AddLeader2P(C,t.O3_2_z)),o.push(r.AddLeader2P(y,t.O3_2_z)),o.push(r.AddLeader2P(u,t.O3_2_y)),o.push(r.AddLeader2P(p,t.O3_2_y)))):(o.push(r.AddLeader2P(_,t.O2_z)),o.push(r.AddLeader2P(g,t.O1)),o.push(r.AddLeader2P(C,t.O3_1_z)),o.push(r.AddLeader2P(h,t.O3_1_z)),o.push(r.AddLeader2P(C,t.O3_1_z)),o.push(r.AddLeader2P(d,t.O_Invert)),o.push(r.AddLeader2P(u,t.O3_2_y)),o.push(r.AddLeader2P(P,t.O_Invert)),o.push(r.AddLeader2P(y,t.O3_2_z)),o.push(r.addLine(t.O3_1_z,t.O2_z,7,"DASHED",.3/s)),o.push(r.addLine(t.O3_1_y,t.O2_y,7,"DASHED",.3/s)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(h,t.O3_1_z,.6),b+Math.PI/2,1),"r3="+(10*t.RadiusFirst3).toFixed(0),e.TextHeight.Height_Ht,0,.7,b)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(y,t.O3_2_z,.45),H+Math.PI/2,-4.5),"R3="+(10*t.RadiusSecond3).toFixed(0),e.TextHeight.Height_Ht,0,.7,H)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(u,t.O3_2_y,.85),x+Math.PI/2,-4.5),"R3="+(10*t.RadiusSecond3).toFixed(0),e.TextHeight.Height_Ht,0,.7,x)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(p,t.O3_1_y,.85),j+Math.PI/2,1),"r3="+(10*t.RadiusFirst3).toFixed(0),e.TextHeight.Height_Ht,0,.7,j)),n.ChenQi.Cqdm.MarkCur?(o.push(r.addText6P(r.PolarPoint(r.PointOnline(P,t.O_Invert,.5),N+Math.PI/2,1),"r4="+(10*t.RadiusFirst4).toFixed(0),e.TextHeight.Height_Ht,0,.7,N)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(P,t.O_Invert,.5),N+Math.PI/2,-4.5),"R4="+(10*t.RadiusSecond4).toFixed(0),e.TextHeight.Height_Ht,0,.7,N))):(o.push(r.addText6P(r.PolarPoint(r.PointOnline(P,t.O_Invert,.5),N+Math.PI/2,1),"r4",e.TextHeight.Height_Ht,0,.7,N)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(P,t.O_Invert,.5),N+Math.PI/2,-4.5),"R4",e.TextHeight.Height_Ht,0,.7,N)))),e.EntityIds.DicLinIdCol.set("DimRadius",o)}catch(d){console.log("错误代码 1204","提示",d)}}},hi=class extends Ze{static Gcsl_Sx2填充找平层(i,n,e){i.Data;const t=i.Setting,o=i.Property,s=i.LinData;""+t.ChenQi.Cqdm.Cqjd.toString();try{{const c=o.EntityIds.DicLinIdCol.get("FirstId")[0];for(let l=0;l<s.SizeRow;l++){const _=[],h=new a.McGePoint3d(s.a_0+l/2,s.H_ngToWidest,0),P=r.PolarPoint(h,-s.Radian_Widest_inDown,s.RadiusFirst2-s.RadiusFirst3),u=P.y-Math.sqrt(Math.pow(s.RadiusFirst3,2)-Math.pow(s.b_0+l/2-P.x,2)),p=new a.McGePoint3d(s.b_0+l/2,u,0),M=r.PolarPoint(h,-s.Radian_Widest_inDown,s.RadiusFirst2),g=r.PolarPoint(h,Math.PI/2-s.Radian_Arch1,s.RadiusFirst2),C=new a.McGePoint3d(p.x,p.y,Math.tan(s.Radian_NearSgArc内/4)),y=new a.McGePoint3d(M.x,M.y,Math.tan(s.Radian_Widest_inAll/4)),F=new a.McGePoint3d(g.x,g.y,Math.tan(s.Radian_Arch1/2)),I=new a.McGePoint3d(-g.x,g.y,Math.tan(s.Radian_Widest_inAll/4)),T=new a.McGePoint3d(-M.x,M.y,Math.tan(s.Radian_NearSgArc内/4)),R=new a.McGePoint3d(-p.x,p.y,Math.tan(s.Radian_Invert内/4));_.push(C),_.push(y),_.push(F),_.push(I),_.push(T),_.push(R),_.push(C);const L=r.addPline5P(_,0,1,!0,!0),f=L.getMcDbCurve(),G=[];if(s.railStyle=="有砟"){const B=A.IntsOfLineToCurve(new a.McGePoint3d(0,-s.dblHeight1,0),new a.McGePoint3d(1,-s.dblHeight1,0),L,"MinX"),Z=new a.McGePoint3d(-s.b1_z_0-l/2,-s.dblHeight1,0),V=new a.McGePoint3d(-s.Zxsg.zxD盖板宽/2+s.RailCenterOffset,-s.dblHeight2,0),q=new a.McGePoint3d(s.Zxsg.zxD盖板宽/2+s.RailCenterOffset,-s.dblHeight2,0),z=new a.McGePoint3d(s.b1_y_0+l/2,-s.dblHeight1,0),$=new a.McGePoint3d(-B.x,B.y,0);t.ChenQi.Cqdm.Spxj?(G.push(B),G.push(Z),G.push(V),G.push(q),G.push(z),G.push($)):(G.push(Z),G.push(V),G.push(q),G.push(z))}else{const B=A.IntsOfLineToCurve(new a.McGePoint3d(0,-s.H_ngToLjm,0),new a.McGePoint3d(1,-s.H_ngToLjm,0),c,"MinX"),Z=new a.McGePoint3d(-s.b1_z_0-l/2,-s.H_ngToLjm,0),V=new a.McGePoint3d(-s.b1_z_0-l/2+.8,-s.H_ngToLjm-(s.b1_y_0+s.b1_z_0+l-s.d-l-28)/2*.02,0),q=new a.McGePoint3d(-s.b1_z_0-l/2+(s.b1_y_0+s.b1_z_0+l-s.d-l-28)/2+s.RailCenterOffset,-s.H_ngToLjm,0),z=new a.McGePoint3d(-(s.d+l-28)/2+s.RailCenterOffset,-s.H_ngToLjm,0),$=new a.McGePoint3d(-(s.Zxsg.zxA内侧宽/2+s.Zxsg.zxB侧壁厚)+s.RailCenterOffset,-s.H_ngToLjm-(s.d+l-28-s.Zxsg.zxA内侧宽-2*s.Zxsg.zxB侧壁厚)/2*.02,0),nt=new a.McGePoint3d(-$.x,$.y,0),ct=new a.McGePoint3d(-z.x,z.y,0),st=new a.McGePoint3d(-q.x,q.y,0),et=new a.McGePoint3d(-V.x,V.y,0),pt=new a.McGePoint3d(-Z.x,Z.y,0),ht=new a.McGePoint3d(-B.x,B.y,0);t.ChenQi.Cqdm.Spxj?(G.push(B),G.push(Z),G.push(V),G.push(q),G.push(z),G.push($),G.push(nt),G.push(ct),G.push(st),G.push(et),G.push(pt),G.push(ht)):(G.push(Z),G.push(V),G.push(q),G.push(z),G.push($),G.push(nt),G.push(ct),G.push(st),G.push(et),G.push(pt))}let O,b;t.ChenQi.Cqdm.Spxj?(O=A.IntsOfLineToCurve(new a.McGePoint3d(0,-s.dblHeight1,0),new a.McGePoint3d(1,-s.dblHeight1,0),L,"MinX"),b=A.IntsOfLineToCurve(new a.McGePoint3d(0,-s.dblHeight1,0),new a.McGePoint3d(1,-s.dblHeight1,0),L,"MaxX")):(O=A.IntsOfLineToCurve(new a.McGePoint3d(-s.b1_z_0-l/2,0,0),new a.McGePoint3d(-s.b1_z_0-l/2,1,0),L,"MinY"),b=A.IntsOfLineToCurve(new a.McGePoint3d(s.b1_y_0+l/2,0,0),new a.McGePoint3d(s.b1_y_0+l/2,1,0),L,"MinY"));const H=[];f.getDistAtPoint(f.getClosestPointTo(O,!1).val).val<f.getDistAtPoint(f.getClosestPointTo(b,!1).val).val?(H.push(f.getClosestPointTo(O,!1).val),H.push(f.getClosestPointTo(b,!1).val)):(H.push(f.getClosestPointTo(b,!1).val),H.push(f.getClosestPointTo(O,!1).val));const x=f.splitCurves(H).aryVal,j=A.IntsOfLineToCurve(new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,-1,0),L,"MinY");let N=new a.McObjectId;for(const B of x){const Z=B.getClosestPointTo(j,!1).val;j.distanceTo(Z)<.001&&(N=r.AppendEntity(B))}const k=N.getMcDbCurve(),Y=[];if(k)for(let B=0;B<k.numVerts();B++)B==k.numVerts()-1?Y.push(new a.McGePoint3d(k.getPointAt(B).val.x,k.getPointAt(B).val.y,0)):Y.push(new a.McGePoint3d(k.getPointAt(B).val.x,k.getPointAt(B).val.y,k.getBulgeAt(B)));for(let B=G.length-1;B>=0;B--)Y.push(G[B]);Y.push(k.getPointAt(0).val),v.Erase(L),v.Erase(N);const U=(A.AreaOfPolyline(Y,!0,!1)-o.AreaLength.AreaOfZxsg外包框)/100,Q=(10*l).toString(),K=e[Q];K.仰拱填充混凝土方量=U,K.找平层混凝土方量=0}}}catch(d){console.error("错误代码 1403","提示",d)}}},Pi=class{DrawTb(i,n){new Ie().ZhcsTable(i),new Ie().Tb_Dmcc_Sx(i);const e=new hi().CalcGcsl_Sx(i);new bn().Tb_GeneralQuantity(i,e,n)}},ui=class extends ze{DrawLining(i,n){const e=i.Setting,t=i.Property;new _t().DrawCq(i,t.EntityIds.DicLinIdCol,t.Color.Color_Jg),new _t().DrawCqzf(i,t.EntityIds.DicLinIdCol,t.Color.Color_Jg),e.ChenQi.Tssz.YlbxMode===re.DrawAndCalculate&&new _t().DrawYlbx(i),new jn().DrawSg(i),new li().DrawMg_Gq(i),new Vt().DrawTc_Sx(i,t.EntityIds.DicLinIdCol,t.Color.Color_Sg),new Ee().DrawSgf(i),new mn().DrawAccessStep(i),new On().DrawHxmg(i),new _i().Dimensioning(i,n),new Fe().Note_Sx(i),new Pi().DrawTb(i,n),new Te().DrawFzx_Sx(i,!1),new Ve().DrawTk(i,2)}DrawSteelDrawingLining(i,n){i.LinData;const e=i.Property;new _t().DrawCq(i,e.EntityIds.DicSteelIdCol,e.Color.Color_CqLk),new Vt().DrawTc_Sx(i,e.EntityIds.DicSteelIdCol,e.Color.Color_CqLk)}DrawFramDrawingLining(i){const n=i.Property;new _t().DrawCq(i,n.EntityIds.DicFramId,n.Color.Color_CqLk),new _t().DrawCqzf(i,n.EntityIds.DicFramId,n.Color.Color_CqLk)}},pi=class extends zn{DrawMark(i){const n=i.Setting,e=i.Property,t=i.LinData;i.SteelData;const o=[],s=new a.McGePoint3d(0,0,0),d=r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusSecond4),c=r.PolarPoint(t.O_Invert,Math.PI*3/2,t.RadiusFirst4),l=r.PolarPoint(t.O1,Math.PI/2,t.RadiusFirst1),_=r.PolarPoint(t.O1,Math.PI/2,t.RadiusSecond1);o.push(r.AddDimRotated5PScale(Math.PI/2,d,c,r.PolarPoint(c,0,t.a+t.RadiusFourth2+10),100)),o.push(r.AddDimRotated5PScale(Math.PI/2,l,_,r.PolarPoint(_,0,t.a+t.RadiusFourth2+10),100)),n.ChenQi.Cqdm.MarkCur?(o.push(r.AddDimRotated5PScale(Math.PI/2,s,c,r.PolarPoint(s,0,t.a+t.RadiusFourth2+10),100)),o.push(r.AddDimRotated5PScale(Math.PI/2,s,l,r.PolarPoint(l,0,t.a+t.RadiusFourth2+10),100))):(o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,s,c,r.PolarPoint(s,0,t.a+t.RadiusFourth2+10),"h[2]")),o.push(r.AddDimRotated6PNoDimLine(Math.PI/2,s,l,r.PolarPoint(l,0,t.a+t.RadiusFourth2+10),"h"))),e.EntityIds.DicSteelIdCol.set("GjbzIdCol_DrawMark",o)}DrawSectionView(i){const n=i.Property,e=i.LinData,t=[];try{if(e.d1==e.d2){const o=Math.PI*3/2-e.Radian_Invert内/8,s=r.PolarPoint(e.O_Invert,o,e.RadiusFirst4-3),d=r.PolarPoint(e.O_Invert,o,e.RadiusSecond4+3);m.JoinIdCol(t,at.AddHatching(s,d,2,"Ⅰ",3.5,3,!1));const c=r.PolarPoint(e.O3_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusFirst3-3),l=r.PolarPoint(e.O3_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusSecond3+3);m.JoinIdCol(t,at.AddHatching(c,l,2,"Ⅰ",3.5,3,!1));const _=r.PolarPoint(e.O1,Math.PI*4/6,e.RadiusFirst1-1),h=r.PolarPoint(e.O1,Math.PI*4/6,e.RadiusSecond1+1);m.JoinIdCol(t,at.AddHatching(_,h,2,"Ⅰ",3.5,3,!1))}else{const o=Math.PI*3/2-e.Radian_Invert内/8,s=r.PolarPoint(e.O_Invert,o,e.RadiusFirst4-3),d=r.PolarPoint(e.O_Invert,o,e.RadiusSecond4+3);m.JoinIdCol(t,at.AddHatching(s,d,2,"Ⅲ",3.5,3,!1));const c=r.PolarPoint(e.O3_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusFirst3-3),l=r.PolarPoint(e.O3_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusSecond3+3);m.JoinIdCol(t,at.AddHatching(c,l,2,"Ⅱ",3.5,3,!1));const _=r.PolarPoint(e.O1,Math.PI*4/6,e.RadiusFirst1-1),h=r.PolarPoint(e.O1,Math.PI*4/6,e.RadiusSecond1+1);m.JoinIdCol(t,at.AddHatching(_,h,2,"Ⅰ",3.5,3,!1))}n.EntityIds.DicSteelIdCol.set("DrawGjbzDm",t)}catch(o){console.log("错误代码 2106")}}},Mi=class extends $e{DimRadius_MainBar(i){const n=i.Setting,e=i.Property,t=i.LinData,o=i.SteelData,s=[],d=1;try{const c=e.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Y1"),l=e.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Y2"),_=e.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Y3"),h=e.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Z3"),P=e.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Z2"),u=e.ContourPoints.Pj.DicSteelFirst.get("ptSteelFirst_Z1"),p=e.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y1"),M=e.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y2"),g=e.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y3"),C=e.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z3"),y=e.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z2"),F=e.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z1"),I=r.PolarPoint(t.O_Invert,275/180*Math.PI,o.RadiusFirstSteel3),T=r.PolarPoint(t.O_Invert,275/180*Math.PI,o.RadiusFirstSteel3-13),R=r.GetDipAngle(t.O2_y,_),L=r.GetDipAngle(h,t.O2_z),f=r.GetDipAngle(l,t.O3_1_y),G=r.GetDipAngle(F,t.O3_2_z),O=r.GetDipAngle(t.O3_2_y,p),b=r.GetDipAngle(t.O3_1_y,M),H=r.GetDipAngle(u,t.O_Invert);s.push(r.AddLeader2P(_,t.O2_y)),s.push(r.AddLeader2P(g,t.O1)),n.ChenQi.Cqdm.MarkCur?(s.push(r.addText(r.PolarPoint(r.PolarPoint(_,R,-8),R+Math.PI/2,1),"r[1]'="+(100*o.RadiusFirstSteel1).toFixed(0),e.TextHeight.Height_Ht,0,.7,R,a.McDb.TextHorzMode.kTextRight,a.McDb.TextVertMode.kTextBottom)),s.push(r.addText(r.PolarPoint(r.PolarPoint(_,R,-8),R+Math.PI/2,-4.5),"R[1]'="+(100*o.RadiusSecondSteel1).toFixed(0),e.TextHeight.Height_Ht,0,.7,R,a.McDb.TextHorzMode.kTextRight,a.McDb.TextVertMode.kTextBottom))):(s.push(r.addText(r.PolarPoint(r.PolarPoint(_,R,-10),R+Math.PI/2,1),"r[1]'",e.TextHeight.Height_Ht,0,.7,R,a.McDb.TextHorzMode.kTextRight,a.McDb.TextVertMode.kTextBottom)),s.push(r.addText(r.PolarPoint(r.PolarPoint(_,R,-10),R+Math.PI/2,-4.5),"R[1]'",e.TextHeight.Height_Ht,0,.7,R,a.McDb.TextHorzMode.kTextRight,a.McDb.TextVertMode.kTextBottom))),t.IsCircular||(s.push(r.AddLeader2P(l,t.O3_1_y)),s.push(r.AddLeader2P(M,t.O3_1_y)),s.push(r.AddLeader2P(h,t.O2_z)),s.push(r.AddLeader2P(C,t.O1)),s.push(r.AddLeader2P(y,t.O3_1_z)),s.push(r.AddLeader2P(P,t.O3_1_z)),s.push(r.AddLeader2P(y,t.O3_1_z)),s.push(r.AddLeader2P(c,t.O_Invert)),s.push(r.AddLeader2P(p,t.O3_2_y)),s.push(r.AddLeader2P(u,t.O_Invert)),s.push(r.AddLeader2P(F,t.O3_2_z)),s.push(r.addLine(t.O3_1_z,t.O2_z,7,"DASHED",.3/d)),s.push(r.addLine(t.O3_1_y,t.O2_y,7,"DASHED",.3/d)),s.push(r.addText(r.PolarPoint(r.PolarPoint(l,f,8),f+Math.PI/2,1),"r[3]'="+(100*o.RadiusFirstSteel3).toFixed(0),e.TextHeight.Height_Ht,0,.7,Math.PI+f,a.McDb.TextHorzMode.kTextRight,a.McDb.TextVertMode.kTextTop)),s.push(r.addText(r.PolarPoint(r.PolarPoint(l,f,8),f+Math.PI/2,-4.5),"R[3]'="+(100*o.RadiusSecondSteel3).toFixed(0),e.TextHeight.Height_Ht,0,.7,Math.PI+f,a.McDb.TextHorzMode.kTextRight,a.McDb.TextVertMode.kTextTop)),n.ChenQi.Cqdm.MarkCur?(s.push(r.addText6P(r.PolarPoint(r.PolarPoint(u,H,8),H+Math.PI/2,1),"r[4]'="+(100*o.RadiusFirstSteel4).toFixed(0),e.TextHeight.Height_Ht,0,.7,H)),s.push(r.addText6P(r.PolarPoint(r.PolarPoint(u,H,8),H+Math.PI/2,-4.5),"R[4]'="+(100*o.RadiusSecondSteel4).toFixed(0),e.TextHeight.Height_Ht,0,.7,H))):(s.push(r.addText6P(r.PolarPoint(r.PolarPoint(u,H,8),H+Math.PI/2,1),"r[4]'",e.TextHeight.Height_Ht,0,.7,H)),s.push(r.addText6P(r.PolarPoint(r.PolarPoint(u,H,8),H+Math.PI/2,-4.5),"R[4]'",e.TextHeight.Height_Ht,0,.7,H))),s.push(r.addText6P(r.PolarPoint(r.PolarPoint(h,L,8),L+Math.PI/2,1),"r[2]'="+(100*o.RadiusFirstSteel2).toFixed(0),e.TextHeight.Height_Ht,0,.7,L)),s.push(r.addText6P(r.PolarPoint(r.PolarPoint(h,L,8),L+Math.PI/2,-4.5),"R[2]'="+(100*o.RadiusSecondSteel2).toFixed(0),e.TextHeight.Height_Ht,0,.7,L))),e.EntityIds.DicIdCol_MainBarDetail.set("DimN12Radius",s)}catch(c){console.log("错误代码 1204")}}DimCenter_MainBar(i){const n=i.Property,e=i.LinData;try{const t=[];t.push(m.CenterPoint(e.O1)),t.push(r.addText6P(new a.McGePoint3d(e.O1.x,e.O1.y-3,0),"O[1]",n.TextHeight.Height_Ht,0,.7,0)),e.IsCircular||(t.push(m.CenterPoint(e.O2_y)),t.push(m.CenterPoint(e.O2_z)),t.push(m.CenterPoint(e.O_Invert)),t.push(m.CenterPoint(e.O3_1_y)),t.push(m.CenterPoint(e.O3_1_z)),t.push(r.addText6P(new a.McGePoint3d(e.O2_y.x,e.O2_y.y+2,0),"O[2]",n.TextHeight.Height_Ht,0,.7,0)),t.push(r.addText6P(new a.McGePoint3d(e.O2_z.x-3,e.O2_z.y+2,0),"O[2]",n.TextHeight.Height_Ht,0,.7,0)),t.push(r.addText6P(new a.McGePoint3d(e.O3_1_z.x-2,e.O3_1_z.y+3,0),"O[3]",n.TextHeight.Height_Ht,0,.7,0)),t.push(r.addText6P(new a.McGePoint3d(e.O3_2_y.x+1,e.O3_2_y.y,0),"O[3]",n.TextHeight.Height_Ht,0,.7,0)),t.push(r.addText6P(e.O_Invert,"O[4]",n.TextHeight.Height_Ht,0,.7,0)),e.d1==e.d2||(t.push(m.CenterPoint(e.O3_2_y)),t.push(m.CenterPoint(e.O3_2_z)),t.push(r.addText6P(new a.McGePoint3d(e.O3_1_y.x-4,e.O3_1_y.y-3,0),"O[3]'",n.TextHeight.Height_Ht,0,.7,0)),t.push(r.addText6P(new a.McGePoint3d(e.O3_2_z.x+2,e.O3_2_z.y-3,0),"O[3]'",n.TextHeight.Height_Ht,0,.7,0)))),n.EntityIds.DicIdCol_MainBarDetail.set("DimCenter",t)}catch(t){console.log("错误代码 1204")}}DimAngle_MainBar(i){const n=i.Property,e=i.LinData,t=[];try{let o=0,s=0;if(e.RadiusFirst2<e.RadiusFirst1?(s=10,o=s+Math.abs(e.RadiusFirst1-e.RadiusFirst2)):(o=10,s=o+Math.abs(e.RadiusFirst1-e.RadiusFirst2)),!e.IsCircular){const d=new a.McGePoint3d(0,0,0),c=r.PolarPoint(e.O2_z,Math.PI,e.RadiusFourth2),l=r.PolarPoint(e.O2_y,0,e.RadiusFourth2),_=r.PolarPoint(e.O2_z,Math.PI,e.RadiusFirst2),h=r.PolarPoint(e.O2_y,0,e.RadiusFirst2),P=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFourth4),u=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusSecond4),p=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFirst4),M=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFirst1),g=r.PolarPoint(e.O1,Math.PI/2,e.RadiusSecond1),C=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFourth1),y=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y2"),F=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y3"),I=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y4"),T=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),R=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z3"),L=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),f=n.ContourPoints.Cq.DicSecond.get("ptSecond_Y2");t.push(r.add3PLineAngular(e.O1,M,T,o,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O1,M,I,o,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O2_z,T,R,s,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O_Invert,y,L,e.RadiusFirst4/2,a.McGePoint3d.kOrigin,"",!0));const G=r.PolarPoint(r.PolarPoint(e.O3_2_y,-e.Radian_Widest_inDown-e.Radian_NearSgArc外/2,e.RadiusFirst3/2),Math.PI/2,25);t.push(r.add3PLineAngular(e.O3_2_y,F,f,e.RadiusFirst3/3,G,"",!0));const O=r.PolarPoint(r.PolarPoint(e.O3_1_z,Math.PI*3/2-e.Radian_Invert内/2-e.Radian_NearSgArc外/2,e.RadiusFirst3/2),Math.PI/2,25);t.push(r.add3PLineAngular(e.O3_1_z,R,L,e.RadiusFirst3/3,O,"",!0))}n.EntityIds.DicIdCol_MainBarDetail.set("DimAngle",t)}catch(o){console.log("错误代码 1202")}}DimLine_MainBar(i){const n=i.Setting,e=i.Property,t=i.LinData,o=[];try{if(!t.IsCircular){const d=e.EntityIds.DicIdCol_MainBarDetail.get("SteelSecondId")[0].getMcDbEntity(),l=e.EntityIds.DicIdCol_MainBarDetail.get("SteelFirstId")[0].getMcDbEntity(),_=new Map,h=new Map;n.ChenQi.Cqdm.MarkCur||(_.set(d.numVerts.length/2,"L[1]"),_.set(d.numVerts.length-1,"L[4]"),h.set(l.numVerts.length/2,"l[1]"),h.set(l.numVerts.length-1,"l[4]")),m.JoinIdCol(o,rt.DimPlineLength(d,5,100,_,[],!0)),m.JoinIdCol(o,rt.DimPlineLength(l,-5,100,h,[],!0)),e.EntityIds.DicIdCol_MainBarDetail.set("DimLine_12",o)}}catch(s){console.log("错误代码 2206")}}},gi=class extends vt{CalcSteelGjsl(i){const n=i.Setting,e=i.Property,t=i.LinData,o=i.SteelData,s=o.steelQuantitys;""+n.PeiJin.Gjbjd.toString();let d=0;const c=10/o.SpacingN1234;n.PeiJin.IsZwg&&(d=11.783*o.DiameterN12/100,11.783*o.DiameterN34/100);for(let l=0;l<t.SizeRow;l++){const _=new tn,h=e.AreaLength.Len_Pj_Out_全环-2*t.Radian_Arch1*o.RadiusSecondSteel1+o.dmSizes[l].length_Out_Arch-t.Radian_Invert外*o.RadiusSecondSteel4+o.dmSizes[l].length_Out_Invert+d*2,P=e.AreaLength.Len_Pj_In_全环-2*t.Radian_Arch1*o.RadiusFirstSteel1+o.dmSizes[l].length_In_Arch-t.Radian_Invert内*o.RadiusFirstSteel4+o.dmSizes[l].length_In_Invert+d*2,u=e.AreaLength.Len_Pj_Cen_Sgfys-2*t.Radian_Arch1*(t.RadiusFirst1+t.d1/2)+2*t.Radian_Arch1*(t.Dms[l].RadiusSecond_Arch-t.d1/2);let p=Math.floor(c*Math.floor(u/o.SpacingN678+.5)),M=Math.floor(c*2*e.AreaLength.number3_DiffThick_Invert),g=Math.floor(c*Math.floor(t.Radian_Invert内*(t.Dms[l].RadiusSecond_Invert-t.d2/2)/o.SpacingN678+.5));const C=Math.floor(2*(p+M+g)/c),y=t.d1/10-(o.TProtectiveCover_W+o.TProtectiveCover_N)/1e3+2*o.Len_HookedBar1_拱墙*o.DiameterN678/1e3,F=t.d2/10-(o.TProtectiveCover_W+o.TProtectiveCover_N)/1e3+2*o.Len_HookedBar3_仰拱*o.DiameterN678/1e3;t.d1==t.d2&&(p=p+M+g,M=0,g=0);let I=0,T=0;const R=(h/10+P/10)*c*it.Bar(o.DiameterN12.toFixed(0)),L=C*it.Bar(o.DiameterN5.toFixed(0));n.PeiJin.IsN5_HRB400?I=R+L:I=R,T=(y*p+(y+F)/2*M+F*g)*it.Bar(o.DiameterN678.toString()),_.W=(100*l).toFixed(0),_.length_MainBar_Out=(h/10).toFixed(n.PeiJin.Gjbjd),_.number_MainBar_Out=c.toFixed(0),_.length_MainBar_In=(P/10).toFixed(n.PeiJin.Gjbjd),_.number_MainBar_In=c.toFixed(0),_.length_VerticalBar="1.000",_.number_VerticalBar=C.toFixed(0),_.length_HookBar_SameThick_Arch=y.toFixed(n.PeiJin.Gjbjd),_.number_HookBar_SameThick_Arch=p.toFixed(1),t.d1==t.d2?_.length_HookBar_DiffThick_Wall=y.toFixed(n.PeiJin.Gjbjd):_.length_HookBar_DiffThick_Wall=y.toFixed(n.PeiJin.Gjbjd)+"~"+F.toFixed(n.PeiJin.Gjbjd),_.number_HookBar_DiffThick_Wall=M.toFixed(0),_.length_HookBar_SameThick_Invert=F.toFixed(n.PeiJin.Gjbjd),_.number_HookBar_SameThick_Invert=g.toFixed(0),_.strHRB400=I.toFixed(n.PeiJin.Gjbjd),_.strHPB300=T.toFixed(n.PeiJin.Gjbjd),_.totalWeight=(I+T).toFixed(n.PeiJin.Gjbjd),_.strRebarCoupler=(c*(Math.ceil(h/90)+Math.ceil(P/90))).toFixed(0),_.HRB400=I,_.HPB300=T,_.rebarCoupler=c*(Math.ceil(h/90)+Math.ceil(P/90)),o.DiameterN12>=18&&o.DiameterN12<28?_.HRB400Between18And28mm=R:o.DiameterN12<18&&(_.HRB400NotLessThan18m=R),o.DiameterN5>=10?_.HPB300NotLessThan10mm=_.HPB300NotLessThan10mm+L:_.HPB300Under10mm=_.HPB300Under10mm+L,o.DiameterN678>=10?_.HPB300NotLessThan10mm=_.HPB300NotLessThan10mm+T:_.HPB300Under10mm=_.HPB300Under10mm+T,s.push(_)}}},Ci=class extends Je{SteelDraw(i,n){i.Property,new Ke().DrawSteelLk(i),new pi().Execute(i),new Mi().Execute(i),new qn().Execute(i),new ce().Note1(i),new ce().Note2(i),new vn().Execute(i),new Bn().DrawSteelSizeTable(i),new gi().DrawNumberTable(i),new Xe().DrawTk(i,2),new Qe().MoveDraw_Sx(i)}},Si=class extends en{CalcSteelFirst(i){i.Data,i.Setting;const n=i.LinData,e=i.SteelData,t=new Map,o=r.PolarPoint(n.O_Invert,Math.PI*3/2+n.Radian_Invert内/2,e.RadiusFirstSteel4),s=r.PolarPoint(n.O2_y,-n.Radian_Widest_inDown,e.RadiusFirstSteel2),d=r.PolarPoint(n.O2_y,Math.PI/2-n.Radian_Arch1,e.RadiusFirstSteel2),c=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_NearSgArc内/4)),l=new a.McGePoint3d(s.x,s.y,Math.tan(n.Radian_Widest_inAll/4)),_=new a.McGePoint3d(d.x,d.y,Math.tan(n.Radian_Arch1/2)),h=new a.McGePoint3d(-d.x,d.y,Math.tan(n.Radian_Widest_inAll/4)),P=new a.McGePoint3d(-s.x,s.y,Math.tan(n.Radian_NearSgArc内/4)),u=new a.McGePoint3d(-o.x,o.y,Math.tan(n.Radian_Invert内/4));return t.set("ptSteelFirst_Y1",c),t.set("ptSteelFirst_Y2",l),t.set("ptSteelFirst_Y3",_),t.set("ptSteelFirst_Z3",h),t.set("ptSteelFirst_Z2",P),t.set("ptSteelFirst_Z1",u),t.set("100ptSteelFirst1",c),t}CalcSteelSecond(i){const n=i.LinData,e=i.SteelData,t=new Map,o=r.PolarPoint(n.O2_y,Math.PI/2-n.Radian_Arch1,e.RadiusSecondSteel2),s=new a.McGePoint3d(e.ptSteelSecond_Y1_无凸度.x,e.ptSteelSecond_Y1_无凸度.y,Math.tan(e.Steel_Radian_R3/4)),d=new a.McGePoint3d(e.ptSteelSecond_Y2_无凸度.x,e.ptSteelSecond_Y2_无凸度.y,Math.tan(n.Radian_Widest_inAll/4)),c=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_Arch1/2)),l=new a.McGePoint3d(-c.x,c.y,Math.tan(n.Radian_Widest_inAll/4)),_=new a.McGePoint3d(-d.x,d.y,Math.tan(e.Steel_Radian_R3/4)),h=new a.McGePoint3d(-s.x,s.y,Math.tan(n.Radian_Invert外/4));return t.set("ptSteelSecond_Y1",s),t.set("ptSteelSecond_Y2",d),t.set("ptSteelSecond_Y3",c),t.set("ptSteelSecond_Z3",l),t.set("ptSteelSecond_Z2",_),t.set("ptSteelSecond_Z1",h),t.set("100ptSteelSecond1",s),t}CalcSteelCenter(i){const n=i.Setting,e=i.LinData,t=i.SteelData,o=new Map;let s,d;n.ChenQi.Cqdm.Wlkxq?(d=r.PolarPoint(e.O3_2_y,-e.Radian_Widest_inDown,e.RadiusSecond3-e.d1/2),s=r.PolarPoint(e.O_Invert,Math.PI*3/2+(Math.PI-e.Radian_Arch1-e.Radian_Widest_inAll-t.Steel_Radian_R3),e.RadiusFirst4+e.d2/2)):(s=r.PolarPoint(e.O3_1_y,-e.Radian_Widest_inDown-e.Radian_NearSgArc内,e.RadiusFirst3+e.d2/2),d=r.PolarPoint(e.O3_1_y,-e.Radian_Widest_inDown,e.RadiusFirst3+e.d1/2));const c=r.PolarPoint(e.O2_y,Math.PI/2-e.Radian_Arch1,e.RadiusFirst2+e.d1/2),l=new a.McGePoint3d(s.x,s.y,Math.tan(t.Steel_Radian_R3/4)),_=new a.McGePoint3d(d.x,d.y,Math.tan(e.Radian_Widest_inAll/4)),h=new a.McGePoint3d(c.x,c.y,Math.tan(e.Radian_Arch1/2)),P=new a.McGePoint3d(-h.x,h.y,Math.tan(e.Radian_Widest_inAll/4)),u=new a.McGePoint3d(-_.x,_.y,Math.tan(t.Steel_Radian_R3/4)),p=new a.McGePoint3d(-l.x,l.y,Math.tan(e.Radian_Invert外/4));return o.set("ptSteelCenter_Y1",l),o.set("ptSteelCenter_Y2",_),o.set("ptSteelCenter_Y3",h),o.set("ptSteelCenter_Z3",P),o.set("ptSteelCenter_Z2",u),o.set("ptSteelCenter_Z1",p),o.set("100ptSteelCenter1",l),o}};class Di extends me{}class yi extends He{}let Ii=class $n extends nn{constructor(){super(...arguments);be(this,"globalData")}ReadData(n,e){try{const t=new Et;return t.Cq=this.ReadCq(n,e),t.Gj=this.ReadGj(n,e),t.Pj=this.ReadPj(n,e),t}catch(t){return new Et}}ReadCq(n,e){try{const t=new zt;return t.Cqtk=$n.ReadCqtk(n,e),t.Zhcs=we.ReadZhcs(n,e),t.Dmcc=we.ReadDmcc(n,e),t.Jzcl=we.ReadJzcl(n,e),t.Sydl=we.ReadSydl(n,e),t}catch(t){return console.error("读取第"+e.toString()+"行数据出错,错误代码205 ReadCq","提示",t),new zt}}static ReadCqtk(n,e){try{const t=n,o=new Bt;return o.Th=t.getCellTextValue(e,0).trim(),o.Dtm=t.getCellTextValue(e,1).trim(),o.Xtm=t.getCellTextValue(e,2).trim(),o.Htrq=t.getCellTextValue(e,3).trim(),o.Gdlx=t.getCellTextValue(e,4).trim(),o}catch(t){return console.error("读取第"+e.toString()+"行数据出错,错误代码201 ReadCqsj","提示",t),new Bt}}ReadPj(n,e){try{const t=new Zt;return t.Pjcs=Zn.ReadPjcs(n,e),t.Pjtk=Zn.ReadPjtk(n,e),t}catch(t){return console.error("读取第"+e.toString()+"行数据出错,错误代码206 ReadPj","提示"),new Zt}}ReadGj(n,e){const t=new Me;return t.Gjtk=Wn.ReadGjtk(n,e),t.Gjcs=Wn.ReadGjcs(n,e),t}GetBaseClass(){const n=new Ut;return n.Cq=new $t,n.Cq.linDataHelper=new ii,n.Cq.liningCalcHelper=new di,n.Cq.liningBase=new ui,n.Pj=new Nt,n.Pj.steelBase=new Ci,n.Pj.steelCalcHelper=new Si,n.Pj.steelDataHelper=new ri,n.Gj=new Lt,n}init_Plugin(n){try{const e=r.UcsToWcs(new a.McGePoint3d),t=n||ai;if(t==null){console.error("请先读取断面数据!","提示");return}for(let o=0;o<t.length-1;o++){this.globalData=new De,this.globalData.Setting=this.LoadSetting(this.TunnelType);const s=this.globalData.Setting,d=new a.McDbXlsxTable;d.setFromArray(t);const c=this.ReadData(d,o+1);this.globalData.Data=c,this.globalData.LinData=new Di,this.globalData.FramData=new si,this.globalData.SteelData=new yi;const l=r.PolarPoint(e,Math.PI*3/2,o*450),_=r.PolarPoint(l,0,450*4),h=r.PolarPoint(l,0,450*6);c.Pj.Pjcs.DiameterN12==0||c.Pj.Pjcs.DiameterN34==0||c.Pj.Pjcs.SpacingN1234==0||c.Pj.Pjcs.DiameterN5==0||c.Pj.Pjcs.DiameterN678==0||c.Pj.Pjcs.SpacingN678==0||c.Pj.Pjcs.TProtectiveCover_W==0||c.Pj.Pjcs.TProtectiveCover_N==0||new je().InitializeAndRunSteel(_,this.globalData,this.GetBaseClass(),this.TunnelType),new pe().InitializeAndRunLining(l,this.globalData,this.GetBaseClass(),this.TunnelType),c.Gj.Gjcs.Thick==0||c.Gj.Gjcs.Thick_Cp==0}}catch(e){console.error(e.toString())}}};class Ti extends me{}class Fi extends Oe{}class Ri extends He{}class wi extends Ne{InitLinCommonData(i,n,e){const t=i.Data,o=i.Setting,s=i.LinData;super.InitLinCommonData(i,n,e),s.H_ngToO1=t.Cq.Dmcc.H_ngToO1/10,s.H_ngToWidest=t.Cq.Dmcc.H_ngToWidest/10,s.H_ngToInvertCenter=t.Cq.Dmcc.H_ngToInvertCenter/10,s.H_zkToZb=t.Cq.Dmcc.H_zkToZb/10,s.H_ngToBqpt=t.Cq.Dmcc.H_ngToBqpt/10,s.H_ngToLjm=t.Cq.Dmcc.H_ngToLjm/10,s.H_sgdToGb=t.Cq.Dmcc.H_sgdToGb/10,s.H_ngToSgf=t.Cq.Dmcc.H_ngToSgf/10,s.H_ngToGb=t.Cq.Dmcc.H_ngToGb/10,s.B_zxToO3=t.Cq.Dmcc.B_zxToO3/10,s.railStyle=t.Cq.Cqtk.Gdlx,s.d1=t.Cq.Zhcs.d1_Gqcqhd/10,s.t1=t.Cq.Zhcs.t1_Gqylbx,s.m1=t.Cq.Zhcs.m1_Gqczhd/10,s.d2=t.Cq.Zhcs.d2_Ygcqhd/10,s.m2=t.Cq.Zhcs.m2_Ygczhd/10,s.Dz=t.Cq.Zhcs.Dz_Mgzxjj/10,s.Bw=t.Cq.Zhcs.Bw_Wpjj/10,s.Fwi=t.Cq.Zhcs.Fwi_wpzj,s.RadiusFirst1=t.Cq.Dmcc.RadiusFirst_Arch/10,s.RadiusFirst2=t.Cq.Dmcc.RadiusFirst2/10,s.RadiusFirst3=t.Cq.Dmcc.RadiusFirst3/10,s.Angle1=t.Cq.Dmcc.Angle1,s.AngleGb=t.Cq.Dmcc.Angle_Gb,s.b1_z=t.Cq.Dmcc.b1_z/10,s.b1_y=t.Cq.Dmcc.b1_y/10,s.RadiusSecond1=s.RadiusFirst1+s.d1,s.RadiusSecond2=s.RadiusFirst2+s.d1,s.RadiusSecond3=s.RadiusFirst3+s.d2;let d=0;n&&(d=t.Gj.Gjcs.Ylbx_Gq/10),s.RadiusThird1=s.RadiusSecond1+d,s.RadiusThird2=s.RadiusSecond2+d,s.RadiusThird3=s.RadiusSecond3,s.RadiusFourth1=s.RadiusThird1+s.m1,s.RadiusFourth2=s.RadiusThird2+s.m1,s.RadiusFourth3=s.RadiusThird3+s.m2,s.Radian_Arch1=r.Ang2Rad(s.Angle1),s.Radian_Widest_inUp=r.Ang2Rad(90-s.Angle1),s.H_ngToWidest=s.H_ngToO1-(s.RadiusFirst2-s.RadiusFirst1)*Math.sin(s.Radian_Widest_inUp),o.ChenQi.Cqdm.Zbdycqlk?s.Radian_Widest_outDown=Math.asin(s.H_zkToZb/s.RadiusSecond2):s.Radian_Widest_outDown=Math.asin(s.H_zkToZb/(s.RadiusSecond2+s.m1)),s.O1=new a.McGePoint3d(0,s.H_ngToO1,0),s.O2_y=new a.McGePoint3d(-(s.RadiusFirst2-s.RadiusFirst1)*Math.cos(s.Radian_Widest_inUp),s.H_ngToWidest,0),s.O2_z=new a.McGePoint3d((s.RadiusFirst2-s.RadiusFirst1)*Math.cos(s.Radian_Widest_inUp),s.H_ngToWidest,0),s.O_Invert=new a.McGePoint3d(s.B_zxToO3,s.H_ngToInvertCenter,0),s.RailCenterOffset=(s.b1_y-s.b1_z)/2;let c;if(o.ChenQi.Cqdm.Wlkxq){s.Radian_Widest_inDown=Math.asin(s.H_ngToWidest/s.RadiusFirst2);const h=r.PolarPoint(s.O2_y,-s.Radian_Widest_inDown,s.RadiusFirst2),P=r.PolarPoint(h,Math.PI/2-s.Radian_Widest_inDown,1);c=A.IntsOfLineToCircle5P(s.O_Invert,s.RadiusFirst3,h,P,"MinY")}else{c=A.IntsOfCircleToCircle(s.O_Invert,s.RadiusFirst3,s.O2_z,s.RadiusFirst2,"MinX");const h=r.PolarPoint(s.O2_z,Math.PI,s.RadiusFirst2);s.Radian_Widest_inDown=A.getArcRadianByTwoPoint(c,h,s.RadiusFirst2)}s.Radian_Widest_outAll=s.Radian_Widest_inUp+s.Radian_Widest_outDown;const l=A.IntsOfLineToCircle5P(s.O_Invert,s.RadiusFirst3,new a.McGePoint3d(-c.x,c.y,0),new a.McGePoint3d(-c.x,c.y-1,0),"MinY");s.Radian_Widest_inAll=s.Radian_Widest_inUp+s.Radian_Widest_inDown,s.Radian_Invert内=A.getArcRadianByTwoPoint(c,l,s.RadiusFirst3);const _=[];for(let h=0;h<1;h++){const P=new qe;P.W=h,P.RadiusFirst_Arch=s.RadiusFirst1,P.RadiusSecond_Arch=s.RadiusSecond1,P.RadiusFirst_Invert=s.RadiusFirst3,P.RadiusSecond_Invert=s.RadiusSecond3,P.H_ngToArchCenter=s.H_ngToO1,P.H_ngToFirstInvertBottom=Math.abs(s.H_ngToInvertCenter-s.RadiusFirst3),P.H_ngToInvertCenter=s.H_ngToInvertCenter,P.h=P.RadiusFirst_Arch+P.H_ngToArchCenter,P.H=P.h+s.d1+s.d2+s.m1+s.m2+P.H_ngToFirstInvertBottom+s.ylbx_Gq+s.ylbx_Yg,_.push(P)}s.Dms=_}CalcLinHotData(i){super.CalcLinHotData(i),i.Data;const n=i.Setting,e=i.Property,t=i.LinData,o=[],s=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y1"),d=e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y2");e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y3"),e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y4"),e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z4"),e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z3"),e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z2"),e.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z1");const c=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y2"),l=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y3"),_=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y4"),h=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z4"),P=e.ContourPoints.Cq.DicSecond.get("ptSecond_Z3");e.ContourPoints.Cq.DicSecond.get("ptSecond_Z2");const u=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),p=e.ContourPoints.Cq.DicFirst.get("ptFirst_Y4"),M=r.Ang2Rad(t.AngleGb),g=jt.MidYlbx(t.t1)/10;jt.MidYlbx(t.t2)/10;const C=new ve,y=2*t.Radian_Arch1*t.RadiusFourth1,F=2*t.Radian_Widest_outAll*t.RadiusFourth2,I=2*((t.H_ngToWidest-t.RadiusFourth2*Math.sin(t.Radian_Widest_outDown)-d.y)/Math.cos(t.Radian_Widest_outDown));d.x-s.x;const T=2*t.Radian_Arch1*(t.RadiusFourth1+g+1),R=2*t.Radian_Widest_outAll*(t.RadiusFourth2+g+1),L=2*t.Radian_Arch1*t.RadiusSecond1,f=2*t.Radian_Widest_outAll*t.RadiusSecond2;2*c.distanceTo(l);const G=2*t.Radian_Arch1*t.RadiusFirst1;2*t.Radian_Widest_inAll*t.RadiusFirst2,t.RadiusFirst3*t.Radian_Invert内;const O=2*t.Radian_Arch1*(t.RadiusSecond1+g),b=2*t.Radian_Widest_outAll*(t.RadiusSecond2+g),H=2*((t.H_ngToWidest-(t.RadiusSecond2+g)*Math.sin(t.Radian_Widest_outDown)-d.y)/Math.cos(t.Radian_Widest_outDown));C.Lenth_Forth_Arch=X.CalcArchLength(M,t.Radian_Arch1,t.Radian_Widest_outAll,t.RadiusFourth1,t.RadiusFourth2),C.Lenth_Forth_ArchWall=y+F+I,C.Lenth_Forth_Invert=e.AreaLength.Len_Cq_Fourth-C.Lenth_Forth_ArchWall,C.Lenth_Forth_Out10cm_Arch=X.CalcArchLength(M,t.Radian_Arch1,t.Radian_Widest_outAll,t.RadiusFourth1+1,t.RadiusFourth2+1),C.Lenth_Forth_Out10cm_ArchWall=T+R+I,C.Lenth_Forth_Out10cm_Invert=C.Lenth_Forth_Invert+t.Radian_Invert外*1,C.Lenth_Third_Arch=X.CalcArchLength(M,t.Radian_Arch1,t.Radian_Widest_outAll,t.RadiusSecond1+g,t.RadiusSecond2+g),C.Lenth_Third_ArchWall=O+b+H,C.Lenth_Second_Arch=X.CalcArchLength(M,t.Radian_Arch1,t.Radian_Widest_outAll,t.RadiusSecond1,t.RadiusSecond2);const x=t.H_ngToGb-n.ChenQi.Cqsz.Fps.JsgdValue/10,j=2*(l.y-x)/Math.cos(t.Radian_Widest_outDown);C.Lenth_Second_ArchWall_Fsb=j+L+f,C.Lenth_Second_ArchWall_Psg=C.Lenth_Second_ArchWall_Fsb-.5,C.Lenth_Second_Around=e.AreaLength.Len_Cq_Second;const N=2*(l.y-e.KeyPoint.pt施工缝右2.y)/Math.cos(t.Radian_Widest_outDown);C.Lenth_Second_ArchWall_Cq=L+f+N,C.Lenth_Second_Invert_Cq=C.Lenth_Second_Around-C.Lenth_Second_ArchWall_Cq,C.Lenth_First_Around=e.AreaLength.Len_Cq_First;const k=A.getArcRadianByTwoPoint(u,e.KeyPoint.pt施工缝左1,t.RadiusFirst2),Y=2*k*t.RadiusFirst2;C.Lenth_First_ArchWall=G+Y;const U=1,Q=2*e.KeyPoint.pt施工缝右2.distanceTo(l);C.Lenth_Offset10cm_ArchWall=2*t.Radian_Arch1*(t.RadiusSecond1-U)+2*t.Radian_Widest_outAll*(t.RadiusSecond2-U)+Q,C.Lenth_Offset10cm_Invert=e.AreaLength.Len_Cq_SecondOffest10cm-C.Lenth_Offset10cm_ArchWall,C.Area_First=e.AreaLength.Area_Cq_First,C.Area_Second=e.AreaLength.Area_Cq_Second,C.Area_Fourth=e.AreaLength.Area_Cq_Fourth;const K=A.getAreaOfBow(t.RadiusFirst1,2*t.Radian_Arch1),B=2*A.getAreaOfBow(t.RadiusFirst2,k),Z=p.x-u.x,V=e.KeyPoint.pt施工缝右1.x-e.KeyPoint.pt施工缝左1.x,q=p.y-e.KeyPoint.pt施工缝右1.y,z=(Z+V)*q/2,$=K+B+z,nt=A.getAreaOfBow(t.RadiusSecond1,2*t.Radian_Arch1),ct=2*A.getAreaOfBow(t.RadiusSecond2,t.Radian_Widest_outAll),st=_.x-h.x,et=l.x-P.x,pt=e.KeyPoint.pt施工缝右2.x-e.KeyPoint.pt施工缝左2.x,ht=_.y-l.y,Mt=l.y-e.KeyPoint.pt施工缝右2.y,wt=(st+et)*ht/2,Dt=(et+pt)*Mt/2,Gt=nt+ct+wt+Dt;C.Area_SecondSgf=Gt,C.Area_FirstSgf=$,C.Volume_拱墙二衬=C.Area_SecondSgf-C.Area_FirstSgf,C.Volume_仰拱二衬=C.Area_Second-C.Area_First-C.Volume_拱墙二衬,C.两侧施工缝厚度=e.KeyPoint.pt施工缝左1.distanceTo(e.KeyPoint.pt施工缝左2)+e.KeyPoint.pt施工缝右1.distanceTo(e.KeyPoint.pt施工缝右2);let lt,yt,Ft,xt,It;const gt=r.addPline4P(X.DicToPt3dcol(e.ContourPoints.Cq.DicSecond),0,e.Color.Color_Jg,!0);lt=A.IntsOfLineToCurve(new a.McGePoint3d(0,-n.ChenQi.Cqsz.Fps.JsgdValue/10,0),new a.McGePoint3d(1,-n.ChenQi.Cqsz.Fps.JsgdValue/10,0),gt,"MaxX");const Ot=t.b1_y+t.Y1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽-3.3,ft=-(t.b1_z+t.Z1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽-3.3);yt=A.IntsOfLineToCurve(new a.McGePoint3d(Ot,0,0),new a.McGePoint3d(Ot,-1,0),gt,"MinY"),Ft=A.IntsOfLineToCurve(new a.McGePoint3d(ft,0,0),new a.McGePoint3d(ft,-1,0),gt,"MinY");const bt=t.b1_y+t.Y1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽+t.Y1c1g.B_水沟宽+3.3,Ct=-(t.b1_z+t.Z1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽+t.Z1c1g.B_水沟宽+3.3);xt=A.IntsOfLineToCurve(new a.McGePoint3d(bt,0,0),new a.McGePoint3d(bt,-1,0),gt,"MinY"),It=A.IntsOfLineToCurve(new a.McGePoint3d(Ct,0,0),new a.McGePoint3d(Ct,-1,0),gt,"MinY");const Kt=t.b1_y+t.Y1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽+t.Y1c1g.B_水沟宽;t.b1_y+t.Y1c1g.b侧壁厚+t.Y1c1g.b侧壁盖板搭接宽+t.Y1c1g.B_水沟宽,C.纵向盲管垂直弯入侧沟长度=lt.x-Kt;const fe=-t.H_sgdToGb+t.H_ngToGb-yt.y+4+3.3+5,_e=-t.H_sgdToGb+t.H_ngToGb-Ft.y+4+3.3+5;C.隧底竖向泄压孔每环长度=fe+_e;const Ht=-t.H_sgdToGb+t.H_ngToGb-xt.y+4+3.3,he=-t.H_sgdToGb+t.H_ngToGb-It.y+4+3.3,qt=A.getArcRadianByTwoPoint(xt,It,t.RadiusSecond3),Xt=t.RadiusSecond3*qt;C.隧底盲管每环长度=Xt+Ht+he,C.隧底彩条布长度=Xt,C.泄水孔不入岩深度=C.纵向盲管垂直弯入侧沟长度+t.m1,C.单侧侧沟内侧环长=t.Y1c1g.B_水沟宽+(t.H_sgdToGb-t.Y1c1g.H_盖板厚)*2,C.中心水沟内侧环长=t.Zxsg.zxF内侧深*2+t.Zxsg.zxA内侧宽,o.push(C),t.hotDatas=o}InitColorAndCoords(i,n){super.InitColorAndCoords(i,n);const e=i.Property;e.FrameCoords.Cq.ptDm_OriginTarget=new a.McGePoint3d(n.x+135,n.y-145,0),e.FrameCoords.Cq.ptNote_TopLeft1=new a.McGePoint3d(n.x+260,n.y-110,0),e.FrameCoords.Cq.ptNote_TopLeft2=new a.McGePoint3d(e.FrameCoords.Cq.ptBase2.x+290,e.FrameCoords.Cq.ptBase2.y-120,0),e.FrameCoords.Cq.ptTable_DmccTopMid=new a.McGePoint3d(n.x+230,n.y-30,0),e.FrameCoords.Cq.ptTable_QuantiyTopMid=new a.McGePoint3d(e.FrameCoords.Cq.ptBase2.x+95,e.FrameCoords.Cq.ptBase2.y-25,0),e.FrameCoords.Cq.ptTable_ZhcsTopMid=new a.McGePoint3d(e.FrameCoords.Cq.ptBase1.x+130,e.FrameCoords.Cq.ptBase1.y-230,0)}}class Gi extends Be{InitSteelCommonData(i){const n=i.Data,e=i.Setting,t=i.LinData,o=i.SteelData;o.DjcdValue=e.PeiJin.DjcdValue,o.DiameterN12=n.Pj.Pjcs.DiameterN12,o.DiameterN34=n.Pj.Pjcs.DiameterN34,o.SpacingN1234=n.Pj.Pjcs.SpacingN1234,o.DiameterN5=n.Pj.Pjcs.DiameterN5,o.DiameterN678=n.Pj.Pjcs.DiameterN678,o.SpacingN678=n.Pj.Pjcs.SpacingN678,o.TProtectiveCover_W=n.Pj.Pjcs.TProtectiveCover_W,o.TProtectiveCover_N=n.Pj.Pjcs.TProtectiveCover_N,o.offSetSteel_W=(o.TProtectiveCover_W+o.DiameterN12/2+o.DiameterN678)/100,o.offSetSteel_N=(o.TProtectiveCover_N+o.DiameterN12/2+o.DiameterN678)/100,o.RadiusFirstSteel1=t.RadiusFirst1+o.offSetSteel_N,o.RadiusFirstSteel2=t.RadiusFirst2+o.offSetSteel_N,o.RadiusFirstSteel3=t.RadiusFirst3+o.offSetSteel_N,o.RadiusSecondSteel1=t.RadiusSecond1-o.offSetSteel_W,o.RadiusSecondSteel2=t.RadiusSecond2-o.offSetSteel_W,o.RadiusSecondSteel3=t.RadiusSecond3-o.offSetSteel_W,o.RadiusCenterSteel1=t.RadiusFirst1+t.d1/2,o.RadiusCenterSteel2=t.RadiusFirst2+t.d1/2,o.RadiusCenterSteel3=t.RadiusFirst3+t.d2/2,e.PeiJin.IsJqjs?(o.MarkRadiusFirst1=t.RadiusFirst1+o.offSetSteel_N,o.MarkRadiusFirst2=t.RadiusFirst2+o.offSetSteel_N,o.MarkRadiusFirst3=t.RadiusFirst3+o.offSetSteel_N,o.MarkRadiusSecond1=t.RadiusSecond1-o.offSetSteel_W,o.MarkRadiusSecond2=t.RadiusSecond2-o.offSetSteel_W,o.MarkRadiusSecond3=t.RadiusSecond3-o.offSetSteel_W):(o.MarkRadiusFirst1=w.CnRound(t.RadiusFirst1,1)+o.offSetSteel_N,o.MarkRadiusFirst2=w.CnRound(t.RadiusFirst2,1)+o.offSetSteel_N,o.MarkRadiusFirst3=w.CnRound(t.RadiusFirst3,1)+o.offSetSteel_N,o.MarkRadiusSecond1=w.CnRound(t.RadiusSecond1,1)-o.offSetSteel_W,o.MarkRadiusSecond2=w.CnRound(t.RadiusSecond2,1)-o.offSetSteel_W,o.MarkRadiusSecond3=w.CnRound(t.RadiusSecond3,1)-o.offSetSteel_W),o.R_HookedBar1_拱墙=E.Dia半圆弯钩直径计算(o.DiameterN12,o.DiameterN5,o.DiameterN678),o.R_HookedBar2_绑扎段=E.Dia半圆弯钩直径计算(o.DiameterN12+o.DiameterN34,o.DiameterN5,o.DiameterN678),o.R_HookedBar3_仰拱=E.Dia半圆弯钩直径计算(o.DiameterN34,o.DiameterN5,o.DiameterN678),o.Len_HookedBar1_拱墙=E.Len半圆钢筋展开段长度(o.R_HookedBar1_拱墙,e.PeiJin.IsAntiSeismic),o.Len_HookedBar2_绑扎段=E.Len半圆钢筋展开段长度(o.R_HookedBar2_绑扎段,e.PeiJin.IsAntiSeismic),o.Len_HookedBar3_仰拱=E.Len半圆钢筋展开段长度(o.R_HookedBar3_仰拱,e.PeiJin.IsAntiSeismic),e.PeiJin.IsZjcyHRB400?o.SteelChar="$":o.SteelChar="^",e.PeiJin.IsN5_HRB400?o.N5SteelChar="$":o.N5SteelChar="!"}CalcSteelHotData(i){super.CalcSteelHotData(i);const n=i.Property,e=i.SteelData,t=i.LinData,o=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelFirst),0,1,!0,!0),s=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelSecond),0,1,!0,!0),d=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelCenter),0,1,!0,!0),c=o.getMcDbEntity(),l=s.getMcDbEntity(),_=d.getMcDbEntity(),h=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y3"),P=_.getClosestPointTo(r.PolarPoint(t.O1,Math.PI/2,e.RadiusCenterSteel1),!1).val,u=_.getDistAtPoint(P).val,p=_.getDistAtPoint(_.getClosestPointTo(h,!1).val).val;n.AreaLength.number1_SameThick_WallArch=Math.floor((u-p-e.SpacingN678/2)/e.SpacingN678+1);const M=(n.AreaLength.number1_SameThick_WallArch-1)*e.SpacingN678+e.SpacingN678/2,g=u-M,C=e.SpacingN678/Math.cos(t.Radian_Widest_outDown),y=_.getPointAtDist(g-e.SpacingN678).val,F=A.IntsOfLineToCurve(y,r.PolarPoint(y,0,1),s,"MaxX"),I=l.getDistAtPoint(F).val;n.AreaLength.number2_DiffThick_Wall=Math.floor(I/C+1);const T=c.offsetCurves(t.d2/2-(e.offSetSteel_W+e.offSetSteel_N)/2,r.PolarPoint(t.O1,Math.PI/2,10*t.RadiusFourth1)),L=r.AppendEntity(T.aryVal[0]).getMcDbEntity(),f=_.getDistAtPoint(_.getPointAt(_.numVerts()-2).val).val,G=(_.getLength().val-f)/2;n.AreaLength.number_Invert=2*Math.floor((G-e.SpacingN678/2)/e.SpacingN678+1),G-n.AreaLength.number_Invert/2*e.SpacingN678+e.SpacingN678/2;const O=L.getLength().val-L.getDistAtPoint(L.getPointAt(L.numVerts()-1).val).val;n.AreaLength.number4_SameThick_Invert=Math.floor((O/2-e.SpacingN678/2)/e.SpacingN678+1)*2,n.AreaLength.number3_DiffThick_Invert=(n.AreaLength.number_Invert-n.AreaLength.number4_SameThick_Invert)/2,v.Erase(c),v.Erase(l),v.Erase(_),v.Erase(L)}InitColorAndCoords(i,n){const e=i.Property;super.InitColorAndCoords(i,n),e.FrameCoords.Pj.ptNote_TopLeft1=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+55,e.FrameCoords.Pj.ptBase1.y-180,0),e.FrameCoords.Pj.ptNote_TopLeft2=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+70,e.FrameCoords.Pj.ptBase2.y-225,0),e.FrameCoords.Pj["ptPm_TopLeftⅠ_Ⅰ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+90,e.FrameCoords.Pj.ptBase2.y-40,0),e.FrameCoords.Pj["ptPm_TopLeftⅡ_Ⅱ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+90,e.FrameCoords.Pj.ptBase2.y-100,0),e.FrameCoords.Pj["ptPm_TopLeftⅢ_Ⅲ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+220,e.FrameCoords.Pj.ptBase2.y-40,0),e.FrameCoords.Pj["ptPm_TopLeftⅣ_Ⅳ"]=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+220,e.FrameCoords.Pj.ptBase2.y-100,0);const t=0;e.FrameCoords.Pj.ptDetail_VerticalBarLeft=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+340+t,e.FrameCoords.Pj.ptBase2.y-110,0),e.FrameCoords.Pj.ptDetail_SameThick_Arch=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+343+t,e.FrameCoords.Pj.ptBase2.y-125,0),e.FrameCoords.Pj.ptDetail_DiffThick_Wall=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+343+t,e.FrameCoords.Pj.ptBase2.y-150,0),e.FrameCoords.Pj.ptDetail_DiffThick_Invert=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+343+t,e.FrameCoords.Pj.ptBase2.y-175,0),e.FrameCoords.Pj.ptDetail_SameThick_Invert=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+343+t,e.FrameCoords.Pj.ptBase2.y-200,0),e.FrameCoords.Pj.ptDetail_HookBarTitleTopMid=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+358+t,e.FrameCoords.Pj.ptBase2.y-220,0),e.FrameCoords.Pj.ptDetail_SemiHookRightDown=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+385+t,e.FrameCoords.Pj.ptBase2.y-45,0),e.FrameCoords.Pj.ptDetail_StraightHookRightDown=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+280+t,e.FrameCoords.Pj.ptBase2.y-100,0),e.FrameCoords.Pj.ptDetail_MainBarOriginTarget=new a.McGePoint3d(e.FrameCoords.Pj.ptBase1.x+320,e.FrameCoords.Pj.ptBase1.y-110,0),e.FrameCoords.Pj.ptTable_QuantiyTopMid=new a.McGePoint3d(e.FrameCoords.Pj.ptBase2.x+95,e.FrameCoords.Pj.ptBase2.y-35,0)}}class fi extends An{InitFramCommonData(i){const n=i.Data,e=i.Setting,t=i.LinData,o=i.FramData;let s=22;switch(n.Gj.Gjcs.Gj_style){case ut.GZGJ:s=0;break;case ut.GSGJ4:s=22;break;case ut.GSGJ3:s=22;break}o.Ylbx_Gq=n.Gj.Gjcs.Ylbx_Gq/10,o.Fram初喷厚度=n.Gj.Gjcs.Thick_Cp/10,o.FramThick=n.Gj.Gjcs.Thick/10,o.Protect_In=w.CnRound(t.m1-o.Fram初喷厚度-o.FramThick,5),o.Protect_Yg=w.CnRound(t.m2-o.Fram初喷厚度-o.FramThick,5),o.rad_E=r.Ang2Rad(n.Gj.Gjcs.AngleOfE),n.Gj.Gjcs.IsGq||(o.Len边墙延伸=n.Gj.Gjcs.Bqyc/10),e.GangJia.IsJtModel8?o.Rad_A=Math.PI/3:o.Rad_A=t.Radian_Arch1*2/3,o.Gjxh=n.Gj.Gjcs.GjXh1,o.Len_Sjmg=n.Gj.Gjcs.Len_Sjmg/10,o.RadiusFramThird1=t.RadiusSecond1+o.Ylbx_Gq,o.RadiusFramThird2=t.RadiusSecond2+o.Ylbx_Gq,o.RadiusFramThird3=t.RadiusSecond3,o.RadiusFramFourth1=o.RadiusFramThird1+t.m1,o.RadiusFramFourth2=o.RadiusFramThird2+t.m1,o.RadiusFramFourth3=o.RadiusFramThird3+t.m2,o.RadiusFramIn1=o.RadiusFramThird1+o.Protect_In+s/100/2,o.RadiusFramIn2=o.RadiusFramThird2+o.Protect_In+s/100/2,o.RadiusFramIn3=o.RadiusFramThird3+o.Protect_Yg+s/100/2,o.RadiusFramCenter1=o.RadiusFramFourth1-o.Fram初喷厚度-o.FramThick/2,o.RadiusFramCenter2=o.RadiusFramFourth2-o.Fram初喷厚度-o.FramThick/2,o.RadiusFramCenter3=o.RadiusFramFourth3-o.Fram初喷厚度-o.FramThick/2,o.RadiusFramOut1=o.RadiusFramCenter1+o.FramThick/2-s/100/2,o.RadiusFramOut2=o.RadiusFramCenter2+o.FramThick/2-s/100/2,o.RadiusFramOut3=o.RadiusFramCenter3+o.FramThick/2-s/100/2,e.GangJia.IsJqjs?(o.MarkRadiusFramThird1=t.RadiusSecond1+o.Ylbx_Gq,o.MarkRadiusFramThird2=t.RadiusSecond2+o.Ylbx_Gq,o.MarkRadiusFramThird3=t.RadiusSecond3,o.MarkRadiusFramFourth1=o.RadiusFramThird1+t.m1,o.MarkRadiusFramFourth2=o.RadiusFramThird2+t.m1,o.MarkRadiusFramFourth3=o.RadiusFramThird3+t.m2,o.MarkRadiusFramIn1=o.RadiusFramThird1+o.Protect_In+s/100/2,o.MarkRadiusFramIn2=o.RadiusFramThird2+o.Protect_In+s/100/2,o.MarkRadiusFramIn3=o.RadiusFramThird3+o.Protect_Yg+s/100/2,o.MarkRadiusFramCenter1=o.RadiusFramFourth1-o.Fram初喷厚度-o.FramThick/2,o.MarkRadiusFramCenter2=o.RadiusFramFourth2-o.Fram初喷厚度-o.FramThick/2,o.MarkRadiusFramCenter3=o.RadiusFramFourth3-o.Fram初喷厚度-o.FramThick/2,o.MarkRadiusFramOut1=o.RadiusFramCenter1+o.FramThick/2-s/100/2,o.MarkRadiusFramOut2=o.RadiusFramCenter2+o.FramThick/2-s/100/2,o.MarkRadiusFramOut3=o.RadiusFramCenter3+o.FramThick/2-s/100/2):(o.MarkRadiusFramThird1=w.CnRound(t.RadiusSecond1,1)+o.Ylbx_Gq,o.MarkRadiusFramThird2=w.CnRound(t.RadiusSecond2,1)+o.Ylbx_Gq,o.MarkRadiusFramThird3=w.CnRound(t.RadiusSecond3,1),o.MarkRadiusFramFourth1=o.MarkRadiusFramThird1+t.m1,o.MarkRadiusFramFourth2=o.MarkRadiusFramThird2+t.m1,o.MarkRadiusFramFourth3=o.MarkRadiusFramThird3+t.m2,o.MarkRadiusFramIn1=o.MarkRadiusFramThird1+o.Protect_In+s/100/2,o.MarkRadiusFramIn2=o.MarkRadiusFramThird2+o.Protect_In+s/100/2,o.MarkRadiusFramIn3=o.MarkRadiusFramThird3+o.Protect_Yg+s/100/2,o.MarkRadiusFramCenter1=o.MarkRadiusFramFourth1-o.Fram初喷厚度-o.FramThick/2,o.MarkRadiusFramCenter2=o.MarkRadiusFramFourth2-o.Fram初喷厚度-o.FramThick/2,o.MarkRadiusFramCenter3=o.MarkRadiusFramFourth3-o.Fram初喷厚度-o.FramThick/2,o.MarkRadiusFramOut1=o.MarkRadiusFramCenter1+o.FramThick/2-s/100/2,o.MarkRadiusFramOut2=o.MarkRadiusFramCenter2+o.FramThick/2-s/100/2,o.MarkRadiusFramOut3=o.MarkRadiusFramCenter3+o.FramThick/2-s/100/2)}}const Ai=[["SL160200","版本:2026-4-21","r1-拱顶内轮廓半径","r2-边墙内轮廓半径","r3-仰拱内轮廓半径","A1-拱顶圆心角的一半","A2-拱部范围角度","h1-内轨至O1的高度","h2-最宽处至直线段高度","h3-路基面至内轨面","h4-内轨至仰拱圆心高度","h5-水沟底至盖板顶","h7-内轨顶面至边墙平台高度(轨下为负)","h8-施工缝距内轨高度(轨下为负)","B_O3-O3至线路中线的水平距离","b1-z-左沟槽边至中心线距离","b1-y-右沟槽边至中心线距离"],["","","360.8439183","673.5058822","675","60","132","429.156","65","76","505","106","-150","-38","","220","220"]];class Ge{static ReadCq1(i,n,e,t){try{const o=new zt;return o.Cqtk=this.ReadCqtk(i,e,"SL仰拱"),o.Zhcs=this.ReadZhcs(i,e),o.Dmcc=this.ReadDmcc(i,e),o.Jzcl=this.ReadJzcl(i,e),o.Sydl=this.ReadSydl(i,e),o}catch(o){return console.error("读取第"+e+"行数据出错,错误代码205 ReadCq",o),null}}static ReadCqtk(i,n,e){try{const t=new Bt;return t.Th=i.getCellTextValue(n,0).trim(),t.Dtm=i.getCellTextValue(n,1).trim(),t.Xtm=i.getCellTextValue(n,2).trim(),t.Htrq=i.getCellTextValue(n,3).trim(),t.Gdlx=i.getCellTextValue(n,4).trim(),t}catch(t){return console.error("读取第"+n+"行数据出错,错误代码201 ReadCqsj",t),null}}static ReadDmcc(i,n){try{const e=new kt,t=new a.McDbXlsxTable;return t.setFromArray(Ai),e.RadiusFirst_Arch=w.ToDouble(t.getCellTextValue(n,2).trim()),e.RadiusFirst2=w.ToDouble(t.getCellTextValue(n,3).trim()),e.RadiusFirst3=w.ToDouble(t.getCellTextValue(n,4).trim()),e.Angle1=w.ToDouble(t.getCellTextValue(n,5).trim()),e.Angle_Gb=w.ToDouble(t.getCellTextValue(n,6).trim()),e.H_ngToO1=w.ToDouble(t.getCellTextValue(n,7).trim()),e.H_zkToZb=w.ToDouble(t.getCellTextValue(n,8).trim()),e.H_ngToLjm=w.ToDouble(t.getCellTextValue(n,9).trim()),e.H_ngToInvertCenter=w.ToDouble(t.getCellTextValue(n,10).trim()),e.H_sgdToGb=w.ToDouble(t.getCellTextValue(n,11).trim()),e.H_ngToBqpt=w.ToDouble(t.getCellTextValue(n,12).trim()),e.H_ngToSgf=w.ToDouble(t.getCellTextValue(n,13).trim()),e.B_zxToO3=w.ToDouble(t.getCellTextValue(n,14).trim()),e.b1_z=w.ToDouble(t.getCellTextValue(n,15).trim()),e.b1_y=w.ToDouble(t.getCellTextValue(n,16).trim()),e.H_ngToGb=0,e.H_ngToNearSgArcTopPoint=0,e}catch(e){return console.error("读取第"+n+"行数据出错,错误代码201 ReadDmcc",e),null}}static ReadZhcs(i,n){try{const e=new ne;e.d1_Gqcqhd=w.ToDouble(i.getCellTextValue(n,5).trim()),e.t1_Gqylbx=i.getCellTextValue(n,6).trim(),e.m1_Gqczhd=w.ToDouble(i.getCellTextValue(n,7).trim()),e.d2_Ygcqhd=w.ToDouble(i.getCellTextValue(n,8).trim()),e.m2_Ygczhd=w.ToDouble(i.getCellTextValue(n,9).trim()),e.Dz_Mgzxjj=w.ToDouble(i.getCellTextValue(n,11)),e.Dh_mgyxjj_左拱部=w.ToDouble(i.getCellTextValue(n,12)),e.Lg_Gbmgcd_左拱部=w.ToDouble(i.getCellTextValue(n,13)),e.Dh_mgyxjj_右拱部=w.ToDouble(i.getCellTextValue(n,14)),e.Lg_Gbmgcd_右拱部=w.ToDouble(i.getCellTextValue(n,15)),e.Dh_mgyxjj_左边墙=w.ToDouble(i.getCellTextValue(n,16)),e.Lb_Bqmgcd_左边墙=w.ToDouble(i.getCellTextValue(n,17)),e.Dh_mgyxjj_右边墙=w.ToDouble(i.getCellTextValue(n,18)),e.Lb_Bqmgcd_右边墙=w.ToDouble(i.getCellTextValue(n,19)),e.Bw_Wpjj=w.ToDouble(i.getCellTextValue(n,20).trim()),e.Fwi_wpzj=w.ToDouble(i.getCellTextValue(n,21).trim());const t=i.getCellTextValue(n,22).trim();t=="全环"?e.Wpbw=W.Qh:t=="拱墙"?e.Wpbw=W.Gq:t=="拱部"||t=="拱部局部"?e.Wpbw=W.Gb:e.Wpbw=W.No;const o=i.getCellTextValue(n,23).trim();return o=="全环"?e.Mgbw=W.Qh:o=="拱墙"?e.Mgbw=W.Gq:o=="拱部"||o=="拱部局部"?e.Mgbw=W.Gb:e.Mgbw=W.No,e}catch(e){return console.error("读取第"+n+"行数据出错,错误代码202 ReadZhcs",e),null}}static ReadJzcl(i,n){try{const e=new te;return e.Hntcl=i.getCellTextValue(n,24).trim(),e.Phntcl=i.getCellTextValue(n,25).trim(),e}catch(e){return console.error("读取第"+n+"行数据出错,错误代码203 ReadJzcl",e),null}}static ReadSydl(i,n){try{const e=new ee;return e.Dl=i.getCellTextValue(n,50).trim(),e}catch(e){return console.error("读取第"+n+"行数据出错,错误代码203 ReadSydl",e),null}}static GetDmcc(i){const n=new kt;return n.RadiusFirst_Arch=i[0],n.RadiusFirst2=i[1],n.RadiusFirst3=i[2],n.Angle1=i[3],n.Angle_Gb=i[4],n.H_ngToO1=i[5],n.H_zkToZb=i[6],n.H_ngToLjm=i[7],n.H_ngToInvertCenter=i[8],n.H_sgdToGb=i[9],n.H_ngToBqpt=i[10],n.H_ngToSgf=i[11],n.B_zxToO3=i[12],n.b1_z=i[13],n.b1_y=i[14],n.H_ngToGb=0,n.H_ngToNearSgArcTopPoint=0,n}}var on=(D=>(D[D.MaoGan22=0]="MaoGan22",D[D.MaoGuan42=1]="MaoGuan42",D[D.No=2]="No",D))(on||{});class Li{static ReadGj1(i,n){const e=new Me;return e.Gjtk=this.ReadGjtk(i,n),e.Gjcs=this.ReadGjcs(i,n),e}static ReadGjtk(i,n){try{const e=new Wt;return e.Th1=i.getCellTextValue(n,38).trim(),e.Tm1=i.getCellTextValue(n,39).trim(),e.Th2=i.getCellTextValue(n,40).trim(),e.Tm2=i.getCellTextValue(n,41).trim(),e}catch(e){return console.error("读取第"+n+"行数据出错,错误代码204 ReadPjcs",e),new Wt}}static ReadGjcs(i,n){try{const e=new Yt;e.GjXh1=i.getCellTextValue(n,42).trim();const t=i.getCellTextValue(n,42).trim();t.includes("I")?e.Gj_style=ut.GZGJ:t.includes("HW")?e.Gj_style=ut.HWGJ:t.includes("G")&&(e.Gj_style=ut.GSGJ4);const o=i.getCellTextValue(n,43).trim();return o=="拱墙"?e.IsGq=!0:o=="全环"&&(e.IsGq=!1),e.Thick=it.GJ_H(e.GjXh1),e.Thick_Cp=w.ToDouble(i.getCellTextValue(n,44).trim()),e.AngleOfE=w.ToDouble(i.getCellTextValue(n,45).trim()),e.Bqyc=w.ToDouble(i.getCellTextValue(n,46).trim()),e.Ylbx_Gq=w.ToDouble(i.getCellTextValue(n,47).trim()),i.getCellTextValue(n,48).trim().includes("杆")?e.Type_Sjmg=on.MaoGan22:e.Type_Sjmg=on.MaoGuan42,e.Len_Sjmg=w.ToDouble(i.getCellTextValue(n,49).trim()),e}catch(e){return console.error("读取第"+n+"行数据出错,错误代码204 ReadPjcs",e),new Yt}}}class xi{static ReadPj1(i,n){try{const e=new Zt;return e.Pjcs=this.ReadPjcs(i,n),e.Pjtk=this.ReadPjtk(i,n),e.Pjtk=this.ReadPjtk(i,n),e}catch(e){return console.error("读取第"+n+"行数据出错,错误代码206 ReadPj",e),null}}static ReadPjtk(i,n){try{const e=new oe;return e.Th1=i.getCellTextValue(n,26).trim(),e.Tm1=i.getCellTextValue(n,27).trim(),e.Th2=i.getCellTextValue(n,28).trim(),e.Tm2=i.getCellTextValue(n,29).trim(),e}catch(e){return console.error("读取第"+n+"行数据出错,错误代码204 ReadPjcs",e),null}}static ReadPjcs(i,n){try{const e={};return e.DiameterN12=w.ToDouble(i.getCellTextValue(n,30).trim()),e.DiameterN34=w.ToDouble(i.getCellTextValue(n,31).trim()),e.SpacingN1234=w.ToDouble(i.getCellTextValue(n,32).trim())/100,e.DiameterN5=w.ToDouble(i.getCellTextValue(n,33).trim()),e.DiameterN678=w.ToDouble(i.getCellTextValue(n,34).trim()),e.SpacingN678=w.ToDouble(i.getCellTextValue(n,35).trim())/100,e.TProtectiveCover_W=w.ToDouble(i.getCellTextValue(n,36).trim()),e.TProtectiveCover_N=w.ToDouble(i.getCellTextValue(n,37).trim()),e}catch(e){return console.error("读取第"+n+"行数据出错,错误代码204 ReadPjcs",e),null}}}class En extends Hn{DrawSg(i){this.DrawZcSg_Dx(i),this.DrawYcSg_Dx(i)}DrawSg_Pj(i){i.Setting;const n=i.Property,e=i.LinData;try{let t={value:0};n.EntityIds.DicSteelIdCol.set("ZcsgIdcol",Rt.SideGroove1c1g(n.KeyPoint.ptStart左,n.KeyPoint.ptEnd左,n.Color.Color_CqLk,e.H_sgdToGb,e.Z1c1g,t));let o={value:0};n.EntityIds.DicSteelIdCol.set("YcsgIdcol",Rt.SideGroove1c1g(n.KeyPoint.ptStart右,n.KeyPoint.ptEnd右,n.Color.Color_CqLk,e.H_sgdToGb,e.Y1c1g,o))}catch(t){console.log("错误代码 1108",t)}}DrawSg_Gj(i){const n=i.Property,e=i.LinData;try{let t={value:0};n.EntityIds.DicFramId.set("ZcsgIdcol",Rt.SideGroove1c1g(n.KeyPoint.ptStart左,n.KeyPoint.ptEnd左,n.Color.Color_CqLk,e.H_sgdToGb,e.Z1c1g,t));let o={value:0};n.EntityIds.DicFramId.set("YcsgIdcol",Rt.SideGroove1c1g(n.KeyPoint.ptStart右,n.KeyPoint.ptEnd右,n.Color.Color_CqLk,e.H_sgdToGb,e.Y1c1g,o))}catch(t){console.log("错误代码 1108",t)}}DrawZcSg_Dx(i){i.Data;const n=i.Setting,e=i.Property,t=i.LinData;try{const o=e.EntityIds.DicLinIdCol.get("FirstId")[0],s=o.getMcDbEntity();let d={value:0};e.EntityIds.DicLinIdCol.set("ZcsgIdcol",Rt.SideGroove1c1g(e.KeyPoint.ptStart左,e.KeyPoint.ptEnd左,e.Color.Color_Sg,t.H_sgdToGb,t.Z1c1g,d));let c;n.ChenQi.Cqdm.Spxj?c=A.IntsOfLineToCurve(new a.McGePoint3d(0,e.KeyPoint.ptStart左.y,0),new a.McGePoint3d(1,e.KeyPoint.ptStart左.y,0),o,"MinX"):c=s.getClosestPointTo(e.KeyPoint.ptStart左,!1).val;const l=at.CalSgArea(e.KeyPoint.ptEnd左,c,o,!1);e.AreaLength.AreadOfZcsg=d.value-l}catch(o){console.log("错误代码 1108",o)}}DrawYcSg_Dx(i){i.Data;const n=i.Setting,e=i.Property,t=i.LinData;try{const o=e.EntityIds.DicLinIdCol.get("FirstId")[0],s=o.getMcDbEntity(),d=e.Color.Color_Sg;let c={value:0};e.EntityIds.DicLinIdCol.set("YcsgIdcol",Rt.SideGroove1c1g(e.KeyPoint.ptStart右,e.KeyPoint.ptEnd右,d,t.H_sgdToGb,t.Y1c1g,c));let l;n.ChenQi.Cqdm.Spxj?l=A.IntsOfLineToCurve(new a.McGePoint3d(0,e.KeyPoint.ptStart右.y,0),new a.McGePoint3d(1,e.KeyPoint.ptStart右.y,0),o,"MaxX"):l=s.getClosestPointTo(e.KeyPoint.ptStart右,!1).val;const _=at.CalSgArea(l,e.KeyPoint.ptEnd右,o,!0);e.AreaLength.AreaOfYcsg=c.value-_}catch(o){console.log("错误代码 1109",o)}}}class bi extends Ye{DrawMg_Gq(i){i.Data,i.Setting;const n=i.Property,e=i.LinData,t=n.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y3"),o=n.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y2");let s=new a.McGePoint3d;e.AngleGb>=e.Angle1*2?s=r.PolarPoint(e.O2_y,Math.PI/2-e.AngleGb/2/180*Math.PI,e.RadiusFourth2):s=r.PolarPoint(e.O1,Math.PI/2-e.AngleGb/2/180*Math.PI,e.RadiusFourth1),super.DrawArchWallRockBolt(i,e,t,o,s)}}class mi extends We{DimLine(i){i.Data,i.Setting;const n=i.Property,e=i.LinData,t=[];try{const o=new a.McGePoint3d(-e.b1_z,0,0),s=new a.McGePoint3d(e.b1_y,0,0),d=new a.McGePoint3d(0,0,0),c=r.PolarPoint(e.O2_z,Math.PI,e.RadiusFourth2),l=r.PolarPoint(e.O2_y,0,e.RadiusFourth2),_=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFourth3),h=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusSecond3),P=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFirst3),u=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFirst1),p=r.PolarPoint(e.O1,Math.PI/2,e.RadiusSecond1),M=r.PolarPoint(e.O1,Math.PI/2,e.RadiusThird1),g=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFourth1),C=r.PolarPoint(c,Math.PI*3/2,e.H_zkToZb),y=new a.McGePoint3d(-e.b1_z+1,-(e.H_ngToLjm-1),0),F=n.ContourPoints.Cq.DicThird_Ylbx_Gq.get("ptThird_Y2"),I=n.ContourPoints.Cq.DicThird_Ylbx_Gq.get("ptThird_Z2"),T=n.ContourPoints.Cq.DicForth_Gq.get("ptForth_Z2"),R=n.ContourPoints.Cq.DicForth_Gq.get("ptForth_Y2");t.push(r.AddDimRotated5PScale(Math.PI,s,d,r.PolarPoint(s,Math.PI/2,4.5),10)),t.push(r.AddDimRotated5PScale(Math.PI,n.KeyPoint.ptEnd右,s,r.PolarPoint(s,Math.PI/2,4.5),10)),t.push(r.AddDimRotated5PScale(Math.PI,c,l,r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFourth3+10),10)),t.push(r.AddDimRotated5PScale(Math.PI,e.O1,e.O2_z,r.PolarPoint(e.O2_z,Math.PI/2,13),10)),t.push(r.addDimRotated6(Math.PI,T,c,r.PolarPoint(T,Math.PI*3/2,6),new a.McGePoint3d(c.x-(c.x-T.x)/2,T.y-4,0),10)),t.push(r.addDimRotated6(Math.PI,T,I,r.PolarPoint(T,Math.PI*3/2,6),new a.McGePoint3d(I.x+2.5,T.y-4,0),10)),t.push(r.addDimRotated6(Math.PI,R,l,r.PolarPoint(R,Math.PI*3/2,6),new a.McGePoint3d(l.x-(l.x-R.x)/2,R.y-4,0),10)),t.push(r.addDimRotated6(Math.PI,R,F,r.PolarPoint(R,Math.PI*3/2,6),new a.McGePoint3d(F.x-2.5,R.y-4,0),10)),t.push(r.AddDimRotated5PScale(Math.PI,o,d,r.PolarPoint(o,Math.PI/2,4.5),10)),t.push(r.AddDimRotated5PScale(Math.PI,n.KeyPoint.ptEnd左,o,r.PolarPoint(n.KeyPoint.ptEnd左,Math.PI/2,4.5),10)),t.push(r.AddDimRotated5PScale(Math.PI/2,d,e.O1,r.PolarPoint(e.O1,Math.PI,4.5),10)),t.push(r.AddDimRotated5PScale(Math.PI/2,e.O_Invert,e.O1,r.PolarPoint(e.O1,Math.PI,4.5),10)),t.push(r.addDimRotated6(Math.PI/2,h,P,r.PolarPoint(h,0,90),new a.McGePoint3d(h.x+87,h.y+e.d2/2,0),10)),t.push(r.AddDimRotated5PScale(Math.PI/2,P,n.KeyPoint.ptEnd右,r.PolarPoint(P,0,90),10)),t.push(r.AddDimRotated5PScale(Math.PI/2,n.KeyPoint.ptEnd右,u,r.PolarPoint(P,0,90),10)),t.push(r.addDimRotated6(Math.PI/2,u,p,r.PolarPoint(u,0,90),new a.McGePoint3d(u.x+87,u.y+e.d1/2,0),10)),t.push(r.addDimRotated6(Math.PI/2,M,g,r.PolarPoint(M,0,90),new a.McGePoint3d(g.x+87,g.y+3,0),10)),t.push(r.AddDimRotated5PScale(Math.PI/2,_,g,r.PolarPoint(_,0,100),10)),t.push(r.AddDimRotated5PScale(Math.PI/2,d,new a.McGePoint3d(0,-e.H_ngToLjm,0),r.PolarPoint(d,Math.PI,4.5),10)),t.push(r.AddDimRotated5PScale(Math.PI/2,c,C,r.PolarPoint(c,Math.PI,3),10)),t.push(r.AddDimRotated5PScale(Math.PI/2,n.KeyPoint.ptEnd左,C,r.PolarPoint(c,Math.PI,3),10)),t.push(r.AddDimRotated5PScale(Math.PI/2,n.KeyPoint.ptEnd左,T,r.PolarPoint(c,Math.PI,3),10)),t.push(r.AddDimRotated5PScale(Math.PI/2,n.KeyPoint.ptEnd左,new a.McGePoint3d(-e.b1_z-(e.Z1c1g.b侧壁厚+e.Z1c1g.b侧壁盖板搭接宽+e.Z1c1g.B_水沟宽),-(e.H_sgdToGb-e.H_ngToGb),0),r.PolarPoint(n.KeyPoint.ptEnd左,Math.PI,2),10)),e.m2!==0&&t.push(r.AddDimRotated5PScale(Math.PI/2,_,h,r.PolarPoint(_,0,90),10)),n.EntityIds.DicLinIdCol.set("DimLine",t)}catch(o){console.log("错误代码 1201","提示")}}DimAngle(i){const n=i.Setting,e=i.Property,t=i.LinData;try{const o=[],s=r.PolarPoint(t.O1,Math.PI/2,t.RadiusFirst1),d=e.ContourPoints.Cq.DicFirst.get("ptFirst_Y4"),c=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),l=e.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),_=e.ContourPoints.Cq.DicFirst.get("ptFirst_Y2"),h=e.ContourPoints.Cq.DicSecond.get("ptSecond_Y3");o.push(r.add3PLineAngular(t.O1,new a.McGePoint3d(c.x,c.y,0),s,12,a.McGePoint3d.kOrigin,"",!0)),o.push(r.add3PLineAngular(t.O1,s,new a.McGePoint3d(d.x,d.y,0),12,a.McGePoint3d.kOrigin,"",!0)),o.push(r.add3PLineAngular(t.O2_y,new a.McGePoint3d(h.x,h.y,0),new a.McGePoint3d(d.x,d.y,0),18,a.McGePoint3d.kOrigin,"",!0)),n.ChenQi.Cqdm.Wlkxq||(o.push(r.add3PLineAngular(t.O2_z,new a.McGePoint3d(l.x,l.y,0),new a.McGePoint3d(c.x,c.y,0),15,a.McGePoint3d.kOrigin,"",!0)),o.push(r.AddLeader2P(l,t.O2_z))),o.push(r.add3PLineAngular(t.O_Invert,new a.McGePoint3d(l.x,l.y,0),_,t.RadiusFirst3-5,a.McGePoint3d.kOrigin,"",!0)),e.EntityIds.DicLinIdCol.set("DimAngle",o)}catch(o){console.log("错误代码 1202","提示")}}DimCenter(i){i.Data,i.Setting;const n=i.Property,e=i.LinData;try{const t=[];t.push(m.CenterPoint(e.O1)),t.push(m.CenterPoint(e.O2_z)),t.push(m.CenterPoint(e.O2_y)),t.push(m.CenterPoint(e.O_Invert)),t.push(r.addText6(new a.McGePoint3d(e.O2_y.x,e.O2_y.y-4,0),"O2",3.5,0,.7,0)),t.push(r.addText6(e.O2_z,"O2",3.5,0,.7,0)),t.push(r.addText6(e.O1,"O1",3.5,0,.7,0)),t.push(r.addText6(e.O_Invert,"O3",3.5,0,.7,0)),n.EntityIds.DicLinIdCol.set("DimCenter",t)}catch(t){console.log("错误代码 1204","提示")}}DimRadius(i){const n=i.Property,e=i.LinData,t=[],o=1;try{const s=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y2"),d=n.ContourPoints.Cq.DicFirst.get("ptFirst_Y4"),c=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z4"),l=n.ContourPoints.Cq.DicFirst.get("ptFirst_Z2"),_=n.ContourPoints.Cq.DicSecond.get("ptSecond_Y3"),h=n.ContourPoints.Cq.DicSecond.get("ptSecond_Y4"),P=n.ContourPoints.Cq.DicSecond.get("ptSecond_Z4"),u=r.PolarPoint(e.O2_z,Math.PI,e.RadiusFourth2),p=r.GetDipAngle(l,e.O2_z),M=r.GetDipAngle(n.KeyPoint.ptEnd左,e.O2_z),g=r.GetDipAngle(c,e.O2_z),C=r.GetDipAngle(e.O2_y,d),y=r.GetDipAngle(e.O2_y,n.KeyPoint.ptEnd右),F=[],I=r.PolarPoint(e.O_Invert,275/180*Math.PI,e.RadiusFirst3),T=r.PolarPoint(e.O_Invert,275/180*Math.PI,e.RadiusFirst3-10),R=r.PolarPoint(e.O_Invert,274/180*Math.PI,e.RadiusFirst3-10),L=r.PolarPoint(e.O_Invert,276/180*Math.PI,e.RadiusFirst3-11),f=r.PolarPoint(e.O_Invert,275/180*Math.PI,e.RadiusFirst3-11),G=r.PolarPoint(e.O_Invert,275/180*Math.PI,e.RadiusFirst3-13);F.push(I),F.push(T),F.push(R),F.push(L),F.push(f),F.push(G),t.push(r.AddLeader(F,!1)),t.push(r.AddLeader2P(r.PolarPoint(e.O2_z,Math.PI,e.RadiusSecond2),e.O2_z)),t.push(r.AddLeader2P(c,e.O1)),t.push(r.AddLeader2P(P,e.O2_z)),t.push(r.AddLeader2P(d,e.O1)),t.push(r.AddLeader2P(h,e.O1)),t.push(r.AddLeader2P(l,e.O_Invert)),t.push(r.AddLeader2P(s,e.O_Invert)),t.push(r.AddLeader(F,!1)),t.push(r.addLine(e.O1,e.O2_y,7,"DASHED",.3/o)),t.push(r.addLine(e.O2_y,_,7,"DASHED",.3/o)),t.push(r.AddLeader2P(n.KeyPoint.ptEnd右,e.O2_y)),t.push(r.addText6(r.PolarPoint(r.PointOnline(c,e.O2_z,.15),g+Math.PI/2,1),"r2="+(10*e.RadiusFirst2).toFixed(0),3.5,0,.7,g)),t.push(r.addText6(r.PolarPoint(r.PointOnline(c,e.O2_z,.15),g-Math.PI/2,3.5),"R2="+(10*e.RadiusSecond2).toFixed(0),3.5,0,.7,g)),t.push(r.addText6(r.PolarPoint(r.PointOnline(d,e.O2_y,.3),C+Math.PI/2,1),"r1="+(10*e.RadiusFirst1).toFixed(0),3.5,0,.7,C)),t.push(r.addText6(r.PolarPoint(r.PointOnline(d,e.O2_y,.3),C-Math.PI/2,3.5),"R1="+(10*e.RadiusSecond1).toFixed(0),3.5,0,.7,C)),t.push(r.addText6(r.PolarPoint(r.PointOnline(I,e.O_Invert,.15),275/180*Math.PI+Math.PI/2,1),"r3="+(10*e.RadiusFirst3).toFixed(0),3.5,0,.7,275/180*Math.PI)),n.EntityIds.DicLinIdCol.set("DimRadius",t)}catch(s){console.log("错误代码 1205","提示")}}}class Oi extends Ze{Gcsl_Sx2填充找平层(i,n){i.Data;const e=i.Setting,t=i.Property,o=i.LinData;""+e.ChenQi.Cqdm.Cqjd.toString();const s=140;new Array(1).fill(0).map(()=>new Array(2));try{const d=n.get("0"),c=Math.tan(Math.asin(Math.sqrt(Math.pow(t.KeyPoint.ptStart左.x-t.KeyPoint.ptStart右.x,2)+Math.pow(t.KeyPoint.ptStart右.y-t.KeyPoint.ptStart左.y,2))/2/o.RadiusFirst3)/2),l=[];if(o.railStyle==="有砟"){const _=new a.McGePoint3d(t.KeyPoint.ptStart右.x,t.KeyPoint.ptStart右.y,0),h=new a.McGePoint3d((o.b1_y-o.b1_z)/2,-o.H_ngToLjm,0),P=new a.McGePoint3d(o.b1_y,-o.H_ngToLjm-(-(o.b1_y-o.b1_z)/2+o.b1_y)*.02,0),u=new a.McGePoint3d(-o.b1_z,-o.H_ngToLjm-((o.b1_y-o.b1_z)/2+o.b1_z)*.02,0),p=new a.McGePoint3d(t.KeyPoint.ptStart左.x,t.KeyPoint.ptStart左.y,c);l.push(_),l.push(P),l.push(h),l.push(u),l.push(p),l.push(_)}else{const _=new a.McGePoint3d(t.KeyPoint.ptStart右.x,t.KeyPoint.ptStart右.y,0),h=new a.McGePoint3d(s/10+(o.b1_y-o.b1_z)/2,-o.H_ngToLjm,0),P=new a.McGePoint3d(o.b1_y,-o.H_ngToLjm-(o.b1_y-(o.b1_y-o.b1_z)/2-14)*.02,0),u=new a.McGePoint3d(-s/10+(o.b1_y-o.b1_z)/2,-o.H_ngToLjm,0),p=new a.McGePoint3d(-o.b1_z,-o.H_ngToLjm-(o.b1_z+(o.b1_y-o.b1_z)/2-14)*.02,0),M=new a.McGePoint3d(t.KeyPoint.ptStart左.x,t.KeyPoint.ptStart左.y,c);l.push(_),l.push(P),l.push(h),l.push(u),l.push(p),l.push(M),l.push(_)}d.仰拱填充混凝土方量=A.AreaOfPolyline(l,!0,!0)/100,d.找平层混凝土方量=0}catch(d){console.log("错误代码 1403","提示")}}}class Hi extends ae{DeleteUnnecessaryColumns(i,n){const e=[1,5,31,32,33,34,35,36,38,39,48,55,58,64,69,84,90,105,106,107],t=n.Property.Quantitys.LinCellTexts;for(let o=1;o<t.length;o++){const s=t[o],d=s[s.length-1].split(/[/—]/)[0].trim();Math.abs(w.ToDouble(d))<1e-5&&(e.includes(o+1)||e.push(o+1))}e.sort((o,s)=>o-s);for(let o=e.length-1;o>=0;o--)i.setSelectedCells([{row:0,col:e[o]}]),i.deleteColumn()}}class ji{DrawTb(i,n){i.Property,new Ie().ZhcsTable(i);const e=new Oi().CalcGcsl_Sx(i);new Hi().Tb_GeneralQuantity(i,e,n)}}class Ni extends ze{DrawLining(i,n){const e=i.Setting,t=i.Property;new _t().DrawCq(i,t.EntityIds.DicLinIdCol,t.Color.Color_Jg),new _t().DrawCqzf(i,t.EntityIds.DicLinIdCol,t.Color.Color_Jg),e.ChenQi.Tssz.YlbxMode===re.DrawAndCalculate&&new _t().DrawYlbx(i),new En().DrawSg(i),new bi().DrawMg_Gq(i),new Vt().DrawTc_Dx(i,t.EntityIds.DicLinIdCol,t.Color.Color_Sg),new Ee().DrawSgf(i),new mi().Dimensioning(i,n),new Fe().Note_Dx(i),new Fe().Note_Quantity_Dx(i),new ji().DrawTb(i,n),new Te().DrawFzx_Dx(i),new Ve().DrawTk(i,2)}DrawSteelDrawingLining(i,n){const e=i.Property;new _t().DrawCq(i,e.EntityIds.DicSteelIdCol,e.Color.Color_CqLk),new En().DrawSg_Pj(i),new Vt().DrawTc_Dx(i,e.EntityIds.DicSteelIdCol,e.Color.Color_CqLk)}DrawFramDrawingLining(i){const n=i.Property;new _t().DrawCq(i,n.EntityIds.DicFramId,n.Color.Color_CqLk),new _t().DrawCqzf(i,n.EntityIds.DicFramId,n.Color.Color_CqLk)}}class de extends ke{CalculateCoordinatesFirst(i){const n=i.Setting,e=i.LinData,t=new Map,o=r.PolarPoint(e.O_Invert,Math.PI*3/2+e.Radian_Invert内/2,e.RadiusFirst3),s=r.PolarPoint(e.O1,Math.PI/2-e.Radian_Arch1,e.RadiusFirst1);if(n.ChenQi.Cqdm.Wlkxq){const d=r.PolarPoint(e.O2_y,-e.Radian_Widest_inDown,e.RadiusFirst2),c=o,l=new a.McGePoint3d(d.x,d.y,Math.tan(e.Radian_Widest_inAll/4)),_=new a.McGePoint3d(s.x,s.y,Math.tan(e.Radian_Arch1/2)),h=new a.McGePoint3d(-s.x,s.y,Math.tan(e.Radian_Widest_inAll/4)),P=new a.McGePoint3d(-d.x,d.y,0),u=new a.McGePoint3d(-o.x,o.y,Math.tan(e.Radian_Invert内/4));t.set("ptFirst_Y2",c),t.set("ptFisrt右增加点",l),t.set("ptFirst_Y4",_),t.set("ptFirst_Z4",h),t.set("ptFisrt左增加点",P),t.set("ptFirst_Z2",u),t.set("100ptFirst1",c)}else{const d=new a.McGePoint3d(o.x,o.y,Math.tan(e.Radian_Widest_inAll/4)),c=new a.McGePoint3d(s.x,s.y,Math.tan(e.Radian_Arch1/2)),l=new a.McGePoint3d(-s.x,s.y,Math.tan(e.Radian_Widest_inAll/4)),_=new a.McGePoint3d(-o.x,o.y,Math.tan(e.Radian_Invert内/4));t.set("ptFirst_Y2",d),t.set("ptFirst_Y4",c),t.set("ptFirst_Z4",l),t.set("ptFirst_Z2",_),t.set("100ptFirst1",d)}return t}CalculateCoordinatesSecond(i){const n=i.LinData,e=new Map,t=r.PolarPoint(n.O2_y,-n.Radian_Widest_outDown,n.RadiusSecond2),o=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,n.RadiusSecond1),s=r.PolarPoint(t,Math.PI*3/2-n.Radian_Widest_outDown,1),d=A.IntsOfLineToCircle5P(n.O_Invert,n.RadiusSecond3,s,t,"MinY"),c=Math.asin(d.x/n.RadiusSecond3)*2,l=new a.McGePoint3d(t.x,t.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),_=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_Arch1/2)),h=new a.McGePoint3d(-o.x,o.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),P=new a.McGePoint3d(-l.x,l.y,0),u=new a.McGePoint3d(-d.x,d.y,Math.tan(c/4));return e.set("ptSecond_Y2",d),e.set("ptSecond_Y3",l),e.set("ptSecond_Y4",_),e.set("ptSecond_Z4",h),e.set("ptSecond_Z3",P),e.set("ptSecond_Z2",u),e.set("100ptSecond1",d),e}CalculateCoordinatesThird_Ylbx_Gq(i){const n=i.LinData,e=de.WallPlatformH(i),t=new Map;let o=new a.McGePoint3d,s,d,c,l,_;const h=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,n.RadiusThird1),P=r.PolarPoint(n.O2_y,-n.Radian_Widest_outDown,n.RadiusThird2),u=r.PolarPoint(P,Math.PI*3/2-n.Radian_Widest_outDown,1);return o=A.IntsOfLineToLine(new a.McGePoint3d(0,e,0),new a.McGePoint3d(1,e,0),P,u),s=new a.McGePoint3d(P.x,P.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),d=new a.McGePoint3d(h.x,h.y,Math.tan(n.Radian_Arch1/2)),c=new a.McGePoint3d(-h.x,h.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),l=new a.McGePoint3d(-s.x,s.y,0),_=new a.McGePoint3d(-o.x,o.y,0),t.set("ptThird_Y2",o),t.set("ptThird_Y3",s),t.set("ptThird_Y4",d),t.set("ptThird_Z4",c),t.set("ptThird_Z3",l),t.set("ptThird_Z2",_),t}CalculateCoordinatesFourth(i){const n=i.LinData,e=new Map;let t,o,s,d,c,l,_,h;const P=r.PolarPoint(n.O2_y,-n.Radian_Widest_outDown,n.RadiusFourth2),u=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,n.RadiusFourth1),p=r.PolarPoint(P,Math.PI*3/2-n.Radian_Widest_outDown,1),M=de.WallPlatformH(i);t=A.IntsOfLineToCircle5P(n.O_Invert,n.RadiusFourth3,new a.McGePoint3d(0,M,0),new a.McGePoint3d(1,M,0),"MaxX"),o=A.IntsOfLineToLine(p,P,new a.McGePoint3d(0,M,0),new a.McGePoint3d(1,M,0)),s=new a.McGePoint3d(P.x,P.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),d=new a.McGePoint3d(u.x,u.y,Math.tan(n.Radian_Arch1/2)),c=new a.McGePoint3d(-d.x,d.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),l=new a.McGePoint3d(-s.x,s.y,0),_=new a.McGePoint3d(-o.x,o.y,0);const g=Math.asin(t.x/n.RadiusFourth3)*2;return h=new a.McGePoint3d(-t.x,t.y,Math.tan(g/4)),e.set("ptForth_Y1",t),e.set("ptForth_Y2",o),e.set("ptForth_Y3",s),e.set("ptForth_Y4",d),e.set("ptForth_Z4",c),e.set("ptForth_Z3",l),e.set("ptForth_Z2",_),e.set("ptForth_Z1",h),e.set("100ptForth1",t),e}static CalcPt3dCol_Second_Gq(i){i.Data,i.Setting;const n=i.LinData,e=de.WallPlatformH(i),t=new Map;let o=new a.McGePoint3d,s,d,c,l,_;const h=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,n.RadiusSecond1),P=r.PolarPoint(n.O2_y,-n.Radian_Widest_outDown,n.RadiusSecond2),u=r.PolarPoint(P,Math.PI*3/2-n.Radian_Widest_outDown,1);return o=A.IntsOfLineToLine(new a.McGePoint3d(0,e,0),new a.McGePoint3d(1,e,0),P,u),s=new a.McGePoint3d(P.x,P.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),d=new a.McGePoint3d(h.x,h.y,Math.tan(n.Radian_Arch1/2)),c=new a.McGePoint3d(-h.x,h.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),l=new a.McGePoint3d(-s.x,s.y,0),_=new a.McGePoint3d(-o.x,o.y,0),t.set("ptSecond_Gq1",o),t.set("ptSecond_Gq2",s),t.set("ptSecond_Gq3",d),t.set("ptSecond_Gq4",c),t.set("ptSecond_Gq5",l),t.set("ptSecond_Gq6",_),t}static CalcPt3dColFirst_Fzkd(i){i.Data,i.Setting;const n=i.LinData,e=new Map,t=r.PolarPoint(n.O2_y,-n.Radian_Widest_inDown,n.RadiusFirst2),o=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,n.RadiusFirst1),s=A.IntsOfLineToCircle5P(n.O_Invert,n.RadiusFirst3,new a.McGePoint3d(t.x,0,0),new a.McGePoint3d(t.x,-1,0),"MinY"),d=new a.McGePoint3d(t.x,t.y,Math.tan(n.Radian_Widest_inAll/4)),c=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_Arch1/2)),l=new a.McGePoint3d(-o.x,o.y,Math.tan(n.Radian_Widest_inAll/4)),_=new a.McGePoint3d(-t.x,t.y,Math.tan(n.Radian3/4));return e.set("ptFisrt右增加点",s),e.set("ptFirst_Y2",d),e.set("ptFirst_Y4",c),e.set("ptFirst_Z4",l),e.set("ptFirst_Z2",_),e.set("100ptFirst1",s),e}static CalcPt3dColSecond_Fzkd(i){i.Data,i.Setting;const n=i.LinData,e=new Map,t=r.PolarPoint(n.O2_y,-n.Radian_Widest_outDown,n.RadiusSecond2),o=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,n.RadiusSecond1),s=new a.McGePoint3d(-t.x,t.y,0),d=r.PolarPoint(t,Math.PI*3/2-n.Radian_Widest_outDown,1),c=r.PolarPoint(s,Math.PI*3/2+n.Radian_Widest_outDown,1),l=A.IntsOfLineToCircle5P(n.O_Invert,n.RadiusSecond3,d,t,"MinY"),_=A.IntsOfLineToCircle5P(n.O_Invert,n.RadiusSecond3,c,s,"MinY"),h=A.getArcRadianByTwoPoint(l,_,n.RadiusSecond3),P=new a.McGePoint3d(t.x,t.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),u=new a.McGePoint3d(o.x,o.y,Math.tan(n.Radian_Arch1/2)),p=new a.McGePoint3d(-o.x,o.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),M=s,g=new a.McGePoint3d(_.x,_.y,Math.tan(h/4));return e.set("ptSecond_Y2",l),e.set("ptSecond_Y3",P),e.set("ptSecond_Y4",u),e.set("ptSecond_Z4",p),e.set("ptSecond_Z3",M),e.set("ptSecond_Z2",g),e.set("100ptSecond1",l),e}static CalcPt3dCol_Ylbx_Fzkd(i,n){i.Data,i.Setting;const e=i.LinData,t=new Map,o=r.PolarPoint(e.O1,Math.PI/2-e.Radian_Arch1,e.RadiusThird1),s=r.PolarPoint(e.O2_y,-e.Radian_Widest_outDown,e.RadiusThird2);r.PolarPoint(s,Math.PI*3/2-e.Radian_Widest_outDown,1);const d=r.PolarPoint(e.O2_y,-e.Radian_Widest_outDown,e.RadiusThird2),c=r.PolarPoint(d,Math.PI*3/2-e.Radian_Widest_outDown,1);A.IntsOfLineToCircle5P(e.O_Invert,e.RadiusSecond3,c,s,"MinY");const l=new a.McGePoint3d(-d.x,d.y,0),_=r.PolarPoint(l,Math.PI*3/2+e.Radian_Widest_outDown,1),h=A.IntsOfLineToCircle5P(e.O_Invert,e.RadiusFourth3,c,d,"MinY"),P=new a.McGePoint3d(s.x,s.y,Math.tan((e.Radian_Widest_outDown+e.Radian_Widest_inUp)/4)),u=new a.McGePoint3d(o.x,o.y,Math.tan(e.Radian_Arch1/2)),p=new a.McGePoint3d(-o.x,o.y,Math.tan((e.Radian_Widest_outDown+e.Radian_Widest_inUp)/4)),M=new a.McGePoint3d(-P.x,P.y,0),g=A.IntsOfLineToCircle5P(e.O_Invert,e.RadiusFourth3,_,l,"MinY");return t.set("ptThird_Y2",h),t.set("ptThird_Y3",P),t.set("ptThird_Y4",u),t.set("ptThird_Z4",p),t.set("ptThird_Z3",M),t.set("ptThird_Z2",g),t}static WallPlatformH(i){i.Data,i.Setting;const n=i.LinData,e=r.PolarPoint(n.O2_y,-n.Radian_Widest_outDown,n.RadiusSecond2),t=r.PolarPoint(e,Math.PI*3/2-n.Radian_Widest_outDown,1),o=A.IntsOfLineToCircle5P(n.O_Invert,n.RadiusSecond3,t,e,"MinY");A.IntsOfLineToCircle5P(n.O_Invert,n.RadiusFourth3,new a.McGePoint3d(0,n.H_ngToBqpt,0),new a.McGePoint3d(1,n.H_ngToBqpt,0),"MaxX");let s;return n.H_ngToBqpt==0||n.m1<1.5||n.H_ngToBqpt>o.y?s=o.y:s=n.H_ngToBqpt,s}}class vi{Execute(i){this.DrawI_I(i),this.DrawII_II(i),this.DrawIII_III(i),this.DrawIV_IV(i)}DrawI_I(i){const n=i.Property,e=i.LinData,t=i.SteelData;try{const o="N[3]"+t.N5SteelChar+t.DiameterN5.toFixed(0),s="N[4]!"+t.DiameterN678.toFixed(0),d="N[1]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),c="N[2]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),l=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_W).toFixed(0),_=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_N).toFixed(0),h=(e.d1*100).toFixed(0),P=(e.d1*100-(t.DiameterN12+2*t.DiameterN678+t.TProtectiveCover_W+t.TProtectiveCover_N)).toFixed(0);E.DjPjpm(n.FrameCoords.Pj["ptPm_TopLeftⅠ_Ⅰ"],4.5,1.7,l,_,h,P,o,s,d,c,"Ⅰ-Ⅰ 断面","示意",3.5)}catch(o){console.log("错误代码 2104","提示")}}DrawII_II(i){const n=i.Property;i.LinData;const e=i.SteelData;try{const t="N[3]"+e.N5SteelChar+e.DiameterN5.toFixed(0),o="N[5]!"+e.DiameterN678.toFixed(0),s="N[1]"+e.SteelChar+e.DiameterN12.toFixed(0)+"@"+(e.SpacingN1234*100).toFixed(0),d="N[2]"+e.SteelChar+e.DiameterN12.toFixed(0)+"@"+(e.SpacingN1234*100).toFixed(0),c=(e.DiameterN12/2+e.DiameterN678+e.TProtectiveCover_W).toFixed(0),l=(e.DiameterN12/2+e.DiameterN678+e.TProtectiveCover_N).toFixed(0),_=(n.AreaLength.lengths_DiffThick_WallArch[n.AreaLength.number8_AboveSgftInsideLap_Wall+n.AreaLength.number9_BelowSgf_Wall+n.AreaLength.number7_AboveSgfOutsideLap_Wall-1]*100+2*(e.DiameterN12/2+e.DiameterN678+(e.TProtectiveCover_W+e.TProtectiveCover_N)/2)).toFixed(0)+"~"+(n.AreaLength.lengths_DiffThick_WallArch[0]*100+2*(e.DiameterN12/2+e.DiameterN678+(e.TProtectiveCover_W+e.TProtectiveCover_N)/2)).toFixed(0),h=(n.AreaLength.lengths_DiffThick_WallArch[n.AreaLength.number8_AboveSgftInsideLap_Wall+n.AreaLength.number9_BelowSgf_Wall+n.AreaLength.number7_AboveSgfOutsideLap_Wall-1]*100).toFixed(0)+"~"+(n.AreaLength.lengths_DiffThick_WallArch[0]*100).toFixed(0);E.DjPjpm(n.FrameCoords.Pj["ptPm_TopLeftⅡ_Ⅱ"],4.5,1.7,c,l,_,h,t,o,s,d,"Ⅱ-Ⅱ 断面","示意",3.5)}catch(t){console.log("错误代码 2105","提示")}}DrawIII_III(i){const n=i.Property;i.LinData;const e=i.SteelData;try{const t="N[3]"+e.N5SteelChar+e.DiameterN5.toFixed(0),o="N[6]!"+e.DiameterN678.toFixed(0),s="N[1]"+e.SteelChar+e.DiameterN12.toFixed(0)+"@"+(e.SpacingN1234*100).toFixed(0),d="N[2]"+e.SteelChar+e.DiameterN12.toFixed(0)+"@"+(e.SpacingN1234*100).toFixed(0),c=(e.DiameterN12/2+e.DiameterN678+e.TProtectiveCover_W).toFixed(0),l=(e.DiameterN12/2+e.DiameterN678+e.TProtectiveCover_N).toFixed(0),_=(n.AreaLength.lengths_DiffThick_Invert[n.AreaLength.number3_DiffThick_Invert-1]*100+2*(e.DiameterN12/2+e.DiameterN678+(e.TProtectiveCover_W+e.TProtectiveCover_N)/2)).toFixed(0)+"~"+(n.AreaLength.lengths_DiffThick_Invert[0]*100+2*(e.DiameterN12/2+e.DiameterN678+(e.TProtectiveCover_W+e.TProtectiveCover_N)/2)).toFixed(0),h=(n.AreaLength.lengths_DiffThick_Invert[n.AreaLength.number3_DiffThick_Invert-1]*100).toFixed(0)+"~"+(n.AreaLength.lengths_DiffThick_Invert[0]*100).toFixed(0);E.DjPjpm(n.FrameCoords.Pj["ptPm_TopLeftⅢ_Ⅲ"],4.5,1.7,c,l,_,h,t,o,s,d,"Ⅲ-Ⅲ 断面","示意",3.5)}catch(t){console.log("错误代码 2106","提示")}}DrawIV_IV(i){const n=i.Property,e=i.LinData,t=i.SteelData;try{const o="N[3]"+t.N5SteelChar+t.DiameterN5.toFixed(0),s="N[7]!"+t.DiameterN678.toFixed(0),d="N[1]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),c="N[2]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(t.SpacingN1234*100).toFixed(0),l=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_W).toFixed(0),_=(t.DiameterN12/2+t.DiameterN678+t.TProtectiveCover_N).toFixed(0),h=(e.d2*100).toFixed(0),P=(e.d2*100-(t.DiameterN12+2*t.DiameterN678+t.TProtectiveCover_W+t.TProtectiveCover_N)).toFixed(0);E.DjPjpm(n.FrameCoords.Pj["ptPm_TopLeftⅣ_Ⅳ"],4.5,1.7,l,_,h,P,o,s,d,c,"Ⅳ-Ⅳ 断面","示意",3.5)}catch(o){console.log("错误代码 2104","提示")}}}class qi extends Nn{Execute(i){const n=i.Setting;super.DrawVerticalBarDetail(i),super.DrawDetai_SameThick_Arch(i),this.DrawDetail_DiffThick_Wall(i),this.DrawDetail_DiffThick_Invert(i),this.DrawDetail_SameThick_Invert(i),this.DrawHookBarDetailTitle(i),this.DrawSemicircularHookDetail(i),n.PeiJin.IsZwg&&super.DrawStraightHookDetail(i)}DrawDetail_DiffThick_Wall(i){const n=i.Property,e=i.SteelData;try{let t="N[5]!"+e.DiameterN678.toFixed(0)+" l="+((n.AreaLength.lengths_DiffThick_WallArch[n.AreaLength.number8_AboveSgftInsideLap_Wall+n.AreaLength.number9_BelowSgf_Wall+n.AreaLength.number7_AboveSgfOutsideLap_Wall-1]+e.Len_HookedBar1_拱墙*e.DiameterN678*2/100+(e.DiameterN12+e.DiameterN678*2)/100)*100).toFixed(0)+"~"+((n.AreaLength.lengths_DiffThick_WallArch[0]+e.Len_HookedBar1_拱墙*e.DiameterN678*2/100+(e.DiameterN12+e.DiameterN678*2)/100)*100).toFixed(0);const o=((n.AreaLength.lengths_DiffThick_WallArch[n.AreaLength.number8_AboveSgftInsideLap_Wall+n.AreaLength.number9_BelowSgf_Wall+n.AreaLength.number7_AboveSgfOutsideLap_Wall-1]+(e.DiameterN12+e.DiameterN678*2)/100)*100).toFixed(0)+"~"+((n.AreaLength.lengths_DiffThick_WallArch[0]+(e.DiameterN12+e.DiameterN678*2)/100)*100).toFixed(0);E.SteelHooked(n.FrameCoords.Pj.ptDetail_DiffThick_Wall,o,t)}catch(t){console.log("错误代码 2212","提示")}}DrawDetail_DiffThick_Invert(i){const n=i.Property,e=i.SteelData;try{const t="N[6]!"+e.DiameterN678.toFixed(0)+" l="+((n.AreaLength.lengths_DiffThick_Invert[n.AreaLength.number3_DiffThick_Invert-1]+e.Len_HookedBar1_拱墙*e.DiameterN678*2/100+(e.DiameterN12+e.DiameterN678*2)/100)*100).toFixed(0)+"~"+((n.AreaLength.lengths_DiffThick_Invert[0]+e.Len_HookedBar1_拱墙*e.DiameterN678*2/100+(e.DiameterN12+e.DiameterN678*2)/100)*100).toFixed(0),o=((n.AreaLength.lengths_DiffThick_Invert[n.AreaLength.number3_DiffThick_Invert-1]+(e.DiameterN12+e.DiameterN678*2)/100)*100).toFixed(0)+"~"+((n.AreaLength.lengths_DiffThick_Invert[0]+(e.DiameterN12+e.DiameterN678*2)/100)*100).toFixed(0);E.SteelHooked(n.FrameCoords.Pj.ptDetail_DiffThick_Invert,o,t)}catch(t){console.log("错误代码 2213","提示")}}DrawDetail_SameThick_Invert(i){const n=i.Property,e=i.LinData,t=i.SteelData;try{const o="N[7]!"+t.DiameterN678.toFixed(0)+" l="+((e.d2-(t.TProtectiveCover_W+t.TProtectiveCover_N)/100)*100+2*t.Len_HookedBar1_拱墙*t.DiameterN678).toFixed(0),s=((e.d2-(t.TProtectiveCover_W+t.TProtectiveCover_N)/100)*100).toFixed(0);E.SteelHooked(n.FrameCoords.Pj.ptDetail_SameThick_Invert,s,o)}catch(o){console.log("错误代码 2213","提示")}}DrawHookBarDetailTitle(i){const n=i.Property;i.LinData;try{m.Heading1(n.FrameCoords.Pj.ptDetail_HookBarTitleTopMid,"N[4]~N[7]钢筋大样图","示意")}catch(e){console.log("错误代码 2213","提示")}}DrawSemicircularHookDetail(i){const n=i.Setting,e=i.Property,t=i.SteelData;try{const o="N[4]、N[5]、N[6]、N[7]钢筋: 两端R="+t.R_HookedBar1_拱墙.toFixed(1)+"d l'="+t.Len_HookedBar1_拱墙.toFixed(3)+"d",s="N[8]钢筋: 一端R="+t.R_HookedBar1_拱墙.toFixed(1)+"d l'="+t.Len_HookedBar1_拱墙.toFixed(3)+"d,另一端R="+t.R_HookedBar2_绑扎段.toFixed(1)+"d l'="+t.Len_HookedBar2_绑扎段.toFixed(3)+"d",d=" "+o;E.Steel半圆弯钩大样(e.FrameCoords.Pj.ptDetail_SemiHookRightDown,d,!1,n.PeiJin.IsAntiSeismic),m.Heading(new a.McGePoint3d(e.FrameCoords.Pj.ptDetail_SemiHookRightDown.x-40,e.FrameCoords.Pj.ptDetail_SemiHookRightDown.y-35,0),"钢筋半圆弯钩大样图","示意")}catch(o){console.log("错误代码 2213","提示")}}}class Bi extends kn{constructor(){super(...arguments),this.ptCol_N6_Gq=[],this.ptCol_N5_Out=[],this.ptCol_N5_In=[],this.ptCol_N678_Z=[],this.ptCol_N678_Y=[],this.ptCol_N6_Yg=[],this.ptCol_N10=[],this.ptN10_in1=new a.McGePoint3d,this.ptN10_Out1=new a.McGePoint3d,this.ptN10_in2=new a.McGePoint3d,this.ptN10_Out2=new a.McGePoint3d,this.IdCol_N10=[],this.pt3dCol_N10=[]}DrawSteelHookBarArch(i){const n=i.Property,e=i.SteelData,t=i.LinData,o=[],s=n.EntityIds.DicSteelIdCol.get("SteelFirstId")[0],d=n.EntityIds.DicSteelIdCol.get("SteelSecondId")[0],c=r.addPline5P(X.DicToPt3dcol(n.ContourPoints.Pj.DicSteelCenter),0,5,!0,!0),l=s.getMcDbEntity(),_=d.getMcDbEntity(),h=c.getMcDbEntity();n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y3");const P=r.AppendEntity(_.offsetCurves(.25,a.McGePoint3d.kOrigin).aryVal[0]),u=r.AppendEntity(l.offsetCurves(.25,r.PolarPoint(t.O1,Math.PI/2,t.RadiusFourth1*2)).aryVal[0]),p=P.getMcDbEntity(),M=u.getMcDbEntity();debugger;p.colorIndex=5,M.colorIndex=5;const g=h.getClosestPointTo(r.PolarPoint(t.O1,Math.PI/2,e.RadiusCenterSteel1),!1).val,C=h.getDistAtPoint(g).val,y=(n.AreaLength.number1_SameThick_WallArch-1)*e.SpacingN678+e.SpacingN678/2,F=C-y;for(let H=0;H<n.AreaLength.number1_SameThick_WallArch*2;H++){const x=h.getPointAtDist(e.SpacingN678*H+F).val,N=h.getFirstDeriv(h.getClosestPointTo(x,!1).val).val.angleTo1(new a.McGeVector3d(1,0,0));this.ptCol_N6_Gq.push(r.PolarPoint(x,N,.25)),this.ptCol_N5_Out.push(p.getClosestPointTo(x,!1).val),this.ptCol_N5_In.push(M.getClosestPointTo(x,!1).val);const k=h.getClosestPointTo(x,!1).val,Y=E.DrawJxgj(d,s,k);for(const U of Y)o.push(U)}const I=e.SpacingN678/Math.cos(t.Radian_Widest_outDown),T=h.getPointAtDist(F-e.SpacingN678).val,R=A.IntsOfLineToCurve(T,r.PolarPoint(T,0,10),d,"MaxX"),f=_.getDistAtPoint(R).val-(n.AreaLength.number2_DiffThick_Wall-1)*I,G=_.getDistAtPoint(R).val;new a.McGePoint3d,new a.McGePoint3d;for(let H=0;H<n.AreaLength.number2_DiffThick_Wall;H++){const x=h.getPointAtDist(Math.abs(G+e.SpacingN678-n.AreaLength.number2_DiffThick_Wall*I+I*H)).val;this.ptCol_N678_Y.push(new a.McGePoint3d(x.x,x.y-.6,0)),this.ptCol_N678_Z.push(new a.McGePoint3d(-x.x,x.y-.6,0));const j=_.getPointAtDist(I*H+f).val;j.y<t.H_ngToSgf?n.AreaLength.number9_BelowSgf_Wall++:j.y<=2*e.DjcdValue*e.DiameterN12/100+t.H_ngToSgf&&j.y>t.H_ngToSgf?n.AreaLength.number8_AboveSgftInsideLap_Wall++:j.y>2*e.DjcdValue*e.DiameterN12/100+t.H_ngToSgf&&n.AreaLength.number7_AboveSgfOutsideLap_Wall++;const N=A.IntsOfLineToCurve(j,r.PolarPoint(j,0,1),u,"MinX");H==0&&new a.McGePoint3d(-j.x,j.y,0),n.AreaLength.lengths_DiffThick_WallArch.push(Math.sqrt(Math.pow(N.x+j.x,2)+Math.pow(N.y-j.y,2))+.25);const k=E.DrawSpgj(d,s,j);for(const Y of k)o.push(Y)}n.AreaLength.number7_AboveSgfOutsideLap_Wall=n.AreaLength.number2_DiffThick_Wall-n.AreaLength.number8_AboveSgftInsideLap_Wall-n.AreaLength.number9_BelowSgf_Wall;const O=A.IntsOfLineToCurve(T,r.PolarPoint(T,0,1),d,"MinX"),b=_.getDistAtPoint(O).val;for(let H=0;H<n.AreaLength.number2_DiffThick_Wall;H++){const x=_.getPointAtDist(I*H+b).val,j=E.DrawSpgj(d,s,x);for(const N of j)o.push(N)}n.EntityIds.DicSteelIdCol.set("DrawSteelHookBarArch",o),v.Erase(h)}DrawSteelHookBarInvert(i){const n=i.Setting,e=i.Property,t=i.LinData,o=i.SteelData,s=[],d=e.EntityIds.DicSteelIdCol.get("SteelFirstId")[0],c=e.EntityIds.DicSteelIdCol.get("SteelSecondId")[0],l=r.addPline5P(X.DicToPt3dcol(e.ContourPoints.Pj.DicSteelCenter),0,1,!0,!0),_=d.getMcDbEntity(),h=c.getMcDbEntity(),P=l.getMcDbEntity(),u=r.AppendEntity(h.offsetCurves(.25,a.McGePoint3d.kOrigin).aryVal[0]),p=r.AppendEntity(_.offsetCurves(.25,r.PolarPoint(t.O1,Math.PI/2,t.RadiusFourth1*2)).aryVal[0]),M=u.getMcDbEntity(),g=p.getMcDbEntity(),C=P.getDistAtPoint(P.getPointAt(P.numVerts()-2).val).val,F=(P.getLength().val-C)/2-e.AreaLength.number_Invert/2*o.SpacingN678+o.SpacingN678/2,I=C+F;let T=new a.McGePoint3d,R=new a.McGePoint3d;const L=[],f=[];if(n.PeiJin.IsTspj)for(let G=0;G<e.AreaLength.number_Invert;G++){const O=o.SpacingN678*G+I,b=P.getPointAtDist(O).val,H=P.getFirstDeriv(P.getClosestPointTo(b,!1).val).val;let x=H.angleTo1(new a.McGeVector3d(1,0,0));this.ptCol_N6_Yg.push(r.PolarPoint(b,x,-.25)),this.ptCol_N10.push(r.PolarPoint(b,x,.25));const j=h.getClosestPointTo(b,!1).val,N=E.DrawJxgj(c,d,j);H.y<0&&(x=Math.PI*2-x),x+=Math.PI/2;const k=r.addLine2P(j,r.PolarPoint(j,x,50)),Y=m.MyIntersectWinth(p,k);e.AreaLength.lengths_DiffThick_Invert.push(Math.sqrt(Math.pow(Y[0].x-j.x,2)+Math.pow(Y[0].y-j.y,2))+.25),v.Erase(k);for(const U of N)s.push(U)}else{for(let b=e.AreaLength.number3_DiffThick_Invert;b<e.AreaLength.number4_SameThick_Invert+e.AreaLength.number3_DiffThick_Invert;b++){const H=P.getPointAtDist(o.SpacingN678*b+I).val,x=P.getFirstDeriv(P.getClosestPointTo(H,!1).val).val;let j=x.angleTo1(new a.McGeVector3d(1,0,0));this.ptCol_N6_Yg.push(r.PolarPoint(H,j,-.25)),this.ptCol_N10.push(r.PolarPoint(H,j,.25));const N=h.getClosestPointTo(H,!1).val,k=E.DrawJxgj(c,d,N);x.y<0&&(j=Math.PI*2-j),j+=Math.PI/2;const Y=A.IntsOfLineToCurve(N,r.PolarPoint(N,j,500),p,"MinY");b==e.AreaLength.number3_DiffThick_Invert&&(T=Y,R=N);for(const U of k)s.push(U)}this.ptN10_in1=_.getClosestPointTo(this.ptN10_in1,!1).val,T=_.getClosestPointTo(T,!1).val,this.ptN10_Out1=h.getClosestPointTo(this.ptN10_Out1,!1).val,R=h.getClosestPointTo(R,!1).val;const G=_.getDistAtPoint(T).val-_.getDistAtPoint(this.ptN10_in1).val,O=h.getDistAtPoint(R).val-h.getDistAtPoint(this.ptN10_Out1).val;for(let b=0;b<e.AreaLength.number3_DiffThick_Invert;b++){const H=_.getPointAtDist(_.getDistAtPoint(this.ptN10_in1).val+(b+1)*G/(e.AreaLength.number3_DiffThick_Invert+1)).val,x=h.getPointAtDist(h.getDistAtPoint(this.ptN10_Out1).val+(b+1)*O/(e.AreaLength.number3_DiffThick_Invert+1)).val;f.push(r.MidPoint(H,x)),e.AreaLength.lengths_DiffThick_Invert.push(H.distanceTo(x));const j=m.ReinforcementBy2P(H,x);for(const N of j)L.push(N)}for(const b of L)s.push(b),s.push(v.Mirror(b,new a.McGePoint3d(0,0,0),new a.McGePoint3d(0,1,0),!1))}v.Erase(P),v.Erase(M),v.Erase(g),e.EntityIds.DicSteelIdCol.set("DrawSteelHookBarInvert",s)}DrawRebarLabel(i){const n=i.Setting,e=i.Property,t=i.SteelData,o=i.LinData,s=[],d="N[3]!"+t.DiameterN5.toFixed(0)+"@"+(100*t.SpacingN678).toFixed(0),c=E.MarkN5Steel(r.PolarPoint(o.O1,Math.PI/4,t.RadiusFirstSteel1),t.SpacingN678,this.ptCol_N5_Out,this.ptCol_N5_In,d,!0);for(const T of c)s.push(T);const l="N[4]!"+t.DiameterN678.toFixed(0)+"@"+(100*t.SpacingN678).toFixed(0),_=[];for(let T=0;T<7;T++)_.push(this.ptCol_N6_Gq[T]);const h=rt.ContinueLeader(_,l,Math.PI/2,t.SpacingN678/2,Math.PI,o.d1,3.5);for(const T of h)s.push(T);const P="N[7]!"+t.DiameterN678.toFixed(0)+"@"+(100*t.SpacingN678).toFixed(0),u=[];for(let T=Math.floor(this.ptCol_N6_Yg.length/2)-1;T>Math.floor(this.ptCol_N6_Yg.length/2)-7;T--)u.push(this.ptCol_N6_Yg[T]);const p=rt.ContinueLeader(u,P,Math.PI*4/3,10,Math.PI,o.d1,3.5);for(const T of p)s.push(T);const M="N[5]!"+t.DiameterN678.toFixed(0)+"@"+(t.SpacingN678*100).toFixed(0),g=[];for(let T=e.AreaLength.number9_BelowSgf_Wall+e.AreaLength.number8_AboveSgftInsideLap_Wall;T<this.ptCol_N678_Z.length;T++)g.push(this.ptCol_N678_Z[T]);const C=rt.ContinueLeader(g,M,Math.PI/2,t.SpacingN678/2,0,o.d1,3.5);for(const T of C)s.push(T);const y="N[5]!"+t.DiameterN678.toFixed(0)+"@"+(t.SpacingN678*100).toFixed(0),F=[];for(let T=e.AreaLength.number9_BelowSgf_Wall;T<e.AreaLength.number8_AboveSgftInsideLap_Wall+e.AreaLength.number9_BelowSgf_Wall;T++)F.push(this.ptCol_N678_Y[T]);const I=rt.ContinueLeader(F,y,Math.PI/2,t.SpacingN678/2,0,o.d1,3.5);for(const T of I)s.push(T);if(e.AreaLength.number9_BelowSgf_Wall>0){const T="N[5]!"+t.DiameterN678.toFixed(0)+"@"+(t.SpacingN678*100).toFixed(0),R=[];for(let f=0;f<e.AreaLength.number9_BelowSgf_Wall;f++)R.push(this.ptCol_N678_Z[f]);const L=rt.ContinueLeader(R,T,Math.PI/2,t.SpacingN678/2,Math.PI,o.d1,3.5);for(const f of L)s.push(f)}if(n.PeiJin.IsTspj){if(e.AreaLength.number3_DiffThick_Invert>0){const T="N[6]!"+t.DiameterN678.toFixed(0)+"@"+(t.SpacingN678*100).toFixed(0),R=[];for(let f=e.AreaLength.number3_DiffThick_Invert+e.AreaLength.number4_SameThick_Invert;f<e.AreaLength.number_Invert;f++)R.push(this.ptCol_N10[f]);const L=rt.ContinueLeader(R,T,Math.PI/2,0,0,o.d1/2,3.5);for(const f of L)s.push(f)}else if(e.AreaLength.number3_DiffThick_Invert>0){const T="N[7]!"+t.DiameterN678.toFixed(0)+"@"+(t.SpacingN678*100).toFixed(0),R=[];for(let f=0;f<e.AreaLength.number3_DiffThick_Invert;f++)R.push(new a.McGePoint3d(-this.pt3dCol_N10[this.pt3dCol_N10.length-f-1].x,this.pt3dCol_N10[this.pt3dCol_N10.length-f-1].y,0));const L=rt.ContinueLeader(R,T,Math.PI/2,0,0,o.d1*1.5,3.5);for(const f of L)s.push(f)}e.EntityIds.DicSteelIdCol.set("GjbzIdCol_DrawRebarLabel",s)}}PlaceSectionMark(i){const n=i.Property,e=i.LinData,t=i.SteelData,o=[];try{const s="N[2]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(100*t.SpacingN1234).toFixed(0),d="N[1]"+t.SteelChar+t.DiameterN12.toFixed(0)+"@"+(100*t.SpacingN1234).toFixed(0),c=r.PolarPoint(e.O1,Math.PI*3/4,t.RadiusFirstSteel1),l=rt.LeaderAndText(c,Math.PI*7/4,10,0,s,n.TextHeight.Height_Ht);for(const P of l)o.push(P);const _=r.PolarPoint(e.O1,Math.PI*2.9/4,t.RadiusSecondSteel1),h=rt.LeaderAndText(_,Math.PI*3/4,10,Math.PI,d,n.TextHeight.Height_Ht);for(const P of h)o.push(P);n.EntityIds.DicSteelIdCol.set("MarkMainDetailBz",o)}catch(s){console.log("错误代码 2201")}}DrawTitle(i){const n=i.Property,e=[];m.Heading1(n.FrameCoords.Pj.ptDm_TitleTopMid,"衬砌钢筋布置图","1:100"),n.EntityIds.DicSteelIdCol.set("GjbzIdCol_DrawTitle",e)}DrawSectionFzx(i){const n=i.Property;new Ue().DrawFzx_Dx(i,n.EntityIds.DicSteelIdCol)}}class ki extends Bi{DrawMark(i){const n=i.Property,e=i.LinData,t=[],o=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusSecond3),s=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFirst3),d=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFirst1),c=r.PolarPoint(e.O1,Math.PI/2,e.RadiusSecond1),l=new a.McGePoint3d(e.b1_y,0,0);t.push(r.AddDimRotated5PScale(Math.PI/2,o,s,r.PolarPoint(o,0,60),100)),t.push(r.AddDimRotated5PScale(Math.PI/2,s,l,r.PolarPoint(s,0,60),100)),t.push(r.AddDimRotated5PScale(Math.PI/2,l,d,r.PolarPoint(s,0,60),100)),t.push(r.AddDimRotated5PScale(Math.PI/2,d,c,r.PolarPoint(d,0,60),100)),n.EntityIds.DicSteelIdCol.set("GjbzIdCol_DrawMark",t)}DrawSectionView(i){const n=i.Property,e=i.LinData,t=i.SteelData,o=[];try{const s=n.EntityIds.DicSteelIdCol.get("SteelFirstId")[0],d=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Y2"),c=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Y4"),l=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Z4"),_=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Z2"),h=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y2"),P=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y3"),u=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y4"),p=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z4"),M=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z3"),g=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z2"),C=r.PolarPoint(e.O1,Math.PI*4/6,e.RadiusFirst1-1),y=r.PolarPoint(e.O1,Math.PI*4/6,e.RadiusSecond1+1);m.JoinIdCol(o,at.AddHatching(C,y,2,"Ⅰ",3.5,3,!1));const F=r.PolarPoint(r.PolarPoint(e.O2_z,Math.PI,t.RadiusFirstSteel2-3),Math.PI*3/2,10),I=r.PolarPoint(r.PolarPoint(e.O2_z,Math.PI,t.RadiusSecondSteel2+2),Math.PI*3/2,10);m.JoinIdCol(o,at.AddHatching(F,I,2,"Ⅱ",3.5,3,!0));const T=(r.GetDipAngle(e.O_Invert,_)+r.GetDipAngle(e.O_Invert,g))/2,R=r.PolarPoint(e.O_Invert,T,t.RadiusFirstSteel3-16),L=r.PolarPoint(e.O_Invert,T,t.RadiusSecondSteel3+3);m.JoinIdCol(o,at.AddHatching(R,L,2,"Ⅲ",3.5,3,!0));const f=Math.PI*4.7/3,G=r.PolarPoint(e.O_Invert,f,t.RadiusFirstSteel3-3),O=r.PolarPoint(e.O_Invert,f,t.RadiusSecondSteel3+3);m.JoinIdCol(o,at.AddHatching(G,O,2,"Ⅳ",3.5,3,!1)),n.EntityIds.DicSteelIdCol.set("DrawGjbzDm",o)}catch(s){console.log("错误代码 2106")}}}class zi extends $e{DimRadius_MainBar(i){const n=i.Property,e=i.LinData,t=i.SteelData,o=[],s=1;try{const d=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFirst1),c=r.PolarPoint(e.O1,Math.PI/2,e.RadiusSecond1),l=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Y2"),_=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Y4"),h=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Z4"),P=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Z2"),u=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y2"),p=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y3"),M=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y4"),g=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z4"),C=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z3"),y=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Z2");o.push(r.AddLeader2P(h,e.O1)),o.push(r.AddLeader2P(_,e.O1)),o.push(r.AddLeader2P(l,e.O2_y)),o.push(r.AddLeader2P(M,e.O1)),o.push(r.AddLeader2P(h,e.O2_z)),o.push(r.AddLeader2P(g,e.O2_z)),o.push(r.AddLeader2P(P,e.O2_z)),o.push(r.AddLeader2P(P,e.O_Invert)),o.push(r.AddLeader2P(u,e.O_Invert)),o.push(r.addLine(e.O1,e.O2_y,7,"DASHED",.5/s)),o.push(r.addLine(p,e.O2_y,7,"DASHED",.5/s));const F="r[1]'="+(100*t.MarkRadiusFirst1).toFixed(0),I="R[1]'="+(100*t.MarkRadiusSecond1).toFixed(0),T=r.GetDipAngle(e.O1,_),R=r.GetDipAngle(h,e.O1);o.push(r.addText6P(r.PolarPoint(r.PointOnline(_,e.O1,.6),T+Math.PI/2,1),F,n.TextHeight.Height_Bz,0,.7,T)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(_,e.O1,.6),T-Math.PI/2,4),I,n.TextHeight.Height_Bz,0,.7,T)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(h,e.O1,.3),R+Math.PI/2,1),"r[2]'="+(100*t.MarkRadiusFirst2).toFixed(0),n.TextHeight.Height_Bz,0,.7,R)),o.push(r.addText6P(r.PolarPoint(r.PointOnline(h,e.O1,.3),R-Math.PI/2,4),"R[2]'="+(100*t.MarkRadiusSecond2).toFixed(0),n.TextHeight.Height_Bz,0,.7,R));const L=r.GetDipAngle(e.O_Invert,P);o.push(r.addText6P(r.PolarPoint(r.PointOnline(P,e.O_Invert,.2),L-Math.PI/2,1),"r[3]'="+(100*t.MarkRadiusFirst3).toFixed(0),n.TextHeight.Height_Bz,0,.7,L+Math.PI));const f=r.GetDipAngle(e.O_Invert,u);o.push(r.addText6P(r.PolarPoint(r.PointOnline(u,e.O_Invert,.3),f+Math.PI/2,1),"R[3]'="+(100*t.MarkRadiusSecond3).toFixed(0),n.TextHeight.Height_Bz,0,.7,f)),n.EntityIds.DicIdCol_MainBarDetail.set("MarkN12dyRadius",o)}catch(d){console.log("错误代码 PJ110")}}DimCenter_MainBar(i){const n=i.Property,e=i.LinData,t=[];try{t.push(m.CenterPoint(e.O2_y)),t.push(m.CenterPoint(e.O2_z)),t.push(m.CenterPoint(e.O1)),t.push(m.CenterPoint(e.O_Invert)),t.push(r.addText5(new a.McGePoint3d(e.O1.x,e.O1.y+1,0),"O[1]",n.TextHeight.Height_Ht,0,.7)),t.push(r.addText5(new a.McGePoint3d(e.O2_y.x-4,e.O2_y.y-2,0),"O[2]",n.TextHeight.Height_Ht,0,.7)),t.push(r.addText5(new a.McGePoint3d(e.O2_z.x+2,e.O2_z.y-2,0),"O[2]",n.TextHeight.Height_Ht,0,.7)),t.push(r.addText5(new a.McGePoint3d(e.O_Invert.x+2,e.O_Invert.y,0),"O[3]",n.TextHeight.Height_Ht,0,.7)),n.EntityIds.DicIdCol_MainBarDetail.set("MarkN12dyCenter",t)}catch(o){console.log("错误代码 PJ111")}}DimAngle_MainBar(i){const n=i.Property,e=i.LinData,t=[];try{const o=r.PolarPoint(e.O1,Math.PI/2,e.RadiusFirst1),s=r.PolarPoint(e.O_Invert,Math.PI*3/2,e.RadiusFirst3),d=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Y2"),c=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Y4"),l=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Z4"),_=n.ContourPoints.Pj.DicSteelFirst.get("ptFirstSteel_Z2"),h=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y3"),P=n.ContourPoints.Pj.DicSteelSecond.get("ptSteelSecond_Y2");t.push(r.add3PLineAngular(e.O1,l,o,e.RadiusFirst1*.4,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O1,c,o,e.RadiusFirst1*.4,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O2_y,d,c,e.RadiusFirst1*.4+e.RadiusFirst2-e.RadiusFirst1,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O2_z,l,_,e.RadiusFirst1*.4+e.RadiusFirst2-e.RadiusFirst1,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O2_y,c,h,18,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O_Invert,P,s,40,a.McGePoint3d.kOrigin,"",!0)),t.push(r.add3PLineAngular(e.O_Invert,s,_,40,a.McGePoint3d.kOrigin,"",!0)),n.EntityIds.DicIdCol_MainBarDetail.set("MarkN12dyAngle",t)}catch(o){console.log("错误代码 PJ112")}}DimLine_MainBar(i){const n=i.Property,e=[];try{const o=n.EntityIds.DicIdCol_MainBarDetail.get("SteelSecondId")[0].getMcDbEntity(),d=n.EntityIds.DicIdCol_MainBarDetail.get("SteelFirstId")[0].getMcDbEntity(),c=new Map,l=new Map;m.JoinIdCol(e,rt.DimPlineLength(o,5,100,c,[],!0)),m.JoinIdCol(e,rt.DimPlineLength(d,-5,100,l,[],!0)),n.EntityIds.DicIdCol_MainBarDetail.set("DimLine_12",e)}catch(t){console.log("错误代码 2206")}}}class Yi extends vt{CalcSteelGjsl(i){const n=i.Setting,e=i.Property,t=i.LinData,o=i.SteelData;""+n.PeiJin.Gjbjd.toString();const s=10/o.SpacingN1234,d=o.steelQuantitys,c=new tn,l=Math.floor(2*(e.AreaLength.number_Invert+e.AreaLength.number1_SameThick_WallArch*2+e.AreaLength.number7_AboveSgfOutsideLap_Wall*2+e.AreaLength.number8_AboveSgftInsideLap_Wall*2+e.AreaLength.number9_BelowSgf_Wall*2)),_=Math.floor(s)*(e.AreaLength.number1_SameThick_WallArch*2),h=Math.floor(s*2*(e.AreaLength.number9_BelowSgf_Wall+e.AreaLength.number8_AboveSgftInsideLap_Wall+e.AreaLength.number7_AboveSgfOutsideLap_Wall)),P=Math.floor(s*2*e.AreaLength.number3_DiffThick_Invert),u=Math.floor(s*e.AreaLength.number4_SameThick_Invert),p=t.d1/10-(o.TProtectiveCover_W+o.TProtectiveCover_N)/1e3+2*o.Len_HookedBar1_拱墙*o.DiameterN678/1e3,M=t.d2/10-(o.TProtectiveCover_W+o.TProtectiveCover_N)/1e3+2*o.Len_HookedBar3_仰拱*o.DiameterN678/1e3;let g=0;for(let R=0;R<e.AreaLength.number9_BelowSgf_Wall+e.AreaLength.number8_AboveSgftInsideLap_Wall+e.AreaLength.number7_AboveSgfOutsideLap_Wall;R++)g=g+(e.AreaLength.lengths_DiffThick_WallArch[R]+(o.DiameterN12+o.DiameterN678*2)/100+2*o.Len_HookedBar1_拱墙*o.DiameterN678/100)/10;g=g/(e.AreaLength.number9_BelowSgf_Wall+e.AreaLength.number8_AboveSgftInsideLap_Wall+e.AreaLength.number7_AboveSgfOutsideLap_Wall);let C=0;for(let R=0;R<e.AreaLength.number3_DiffThick_Invert;R++)C=C+(e.AreaLength.lengths_DiffThick_Invert[R]+(o.DiameterN12+o.DiameterN678*2)/100+2*o.Len_HookedBar3_仰拱*o.DiameterN678/100)/10;C=C/e.AreaLength.number3_DiffThick_Invert;let y,F;const I=(e.AreaLength.Len_Pj_Out_全环/10+e.AreaLength.Len_Pj_In_全环/10)*s*it.Bar(o.DiameterN12.toFixed(0)),T=l*it.Bar(o.DiameterN5.toFixed(0));n.PeiJin.IsN5_HRB400?y=I+T:y=I,F=(p*_+g*h+C*P+M*u)*it.Bar(o.DiameterN678.toString()),c.W=0 .toFixed(0),c.length_MainBar_Out=(e.AreaLength.Len_Pj_Out_全环/10).toFixed(n.PeiJin.Gjbjd),c.number_MainBar_Out=s.toFixed(0),c.length_MainBar_In=(e.AreaLength.Len_Pj_In_全环/10).toFixed(n.PeiJin.Gjbjd),c.number_MainBar_In=s.toFixed(0),c.length_VerticalBar="1.000",c.number_VerticalBar=l.toFixed(0),c.length_HookBar_SameThick_Arch=p.toFixed(n.PeiJin.Gjbjd),c.number_HookBar_SameThick_Arch=_.toFixed(1),c.length_HookBar_DiffThick_Wall=g.toFixed(n.PeiJin.Gjbjd),c.number_HookBar_DiffThick_Wall=h.toFixed(0),c.length_HookBar_DiffThick_Invert=C.toFixed(n.PeiJin.Gjbjd),c.number_HookBar_DiffThick_Invert=P.toFixed(0),c.length_HookBar_SameThick_Invert=M.toFixed(n.PeiJin.Gjbjd),c.number_HookBar_SameThick_Invert=u.toFixed(0),c.strHRB400=y.toFixed(n.PeiJin.Gjbjd),c.strHPB300=F.toFixed(n.PeiJin.Gjbjd),c.totalWeight=(y+F).toFixed(n.PeiJin.Gjbjd),c.strRebarCoupler=(s*(Math.ceil(e.AreaLength.Len_Pj_Out_全环/90)+Math.ceil(e.AreaLength.Len_Pj_In_全环/90))).toFixed(0),c.HRB400=y,c.HPB300=F,o.DiameterN12>=18&&o.DiameterN12<28?c.HRB400Between18And28mm=I:o.DiameterN12<18&&(c.HRB400NotLessThan18m=I),o.DiameterN5>=10?c.HPB300NotLessThan10mm=c.HPB300NotLessThan10mm+T:c.HPB300Under10mm=c.HPB300Under10mm+T,o.DiameterN678>=10?c.HPB300NotLessThan10mm=c.HPB300NotLessThan10mm+F:c.HPB300Under10mm=c.HPB300Under10mm+F,c.rebarCoupler=s*(Math.ceil(e.AreaLength.Len_Pj_Out_全环/90)+Math.ceil(e.AreaLength.Len_Pj_In_全环/90)),d.push(c)}}class le{DrawTb(i){le.Tb_Number_dh(i),le.Note2(i)}static Tb_Number_dh(i){const n=i.Property;i.LinData,n.AreaLength.SteelNumber=le.CalcGjsl_dh(i);try{const e=new a.McGePoint3d(n.FrameCoords.Pj.ptBase2.x+60,n.FrameCoords.Pj.ptBase2.y-160,0),t=[["钢 筋 编 号","直 径 (mm)","单位重 (kg/m)","根数","每根长度 (m)","总 长 (m)","总 重 (kg)"]],o=n.AreaLength.SteelNumber,s=[...t,...o],d=new a.McDbXlsxTable;d.styleName="STANDARD",d.setFromArray(s);for(let _=0;_<d.rowCount;_++)d.setRowHeight(_,_===0?12:6);for(let _=0;_<d.colCount;_++)d.setColumnWidth(_,20);const c=[];c.push(new se(3,0,3,5)),c.push(new se(9,0,9,5)),c.push(new se(10,0,10,5)),c.push(new se(11,0,11,6)),m.MergeTable(d,c),d.position=e;const l=d.getBoundingBox().maxPt.x-d.getBoundingBox().minPt.x;m.Heading1(new a.McGePoint3d(e.x+l/2,e.y+5,0),"每延米钢筋数量表",""),r.AppendEntity(d)}catch(e){}}static Note2(i){const n=i.Data,e=i.Setting,t=i.Property;try{let o;e.PeiJin.IsZwg?o=new a.McGePoint3d(t.FrameCoords.Pj.ptBase2.x+225,t.FrameCoords.Pj.ptBase2.y-200,0):o=new a.McGePoint3d(t.FrameCoords.Pj.ptBase2.x+225,t.FrameCoords.Pj.ptBase2.y-170,0);const s=`说明:
|
|
43
|
+
1. 本图尺寸除注明者外,其余均以毫米计。`,d=` 2. 本图配合"${n.Pj.Pjtk.Th1}"图使用。`,c=" 3. N[4]、N[5]、N[6]、N[7]钢筋采用半圆弯钩。 ",l=" 4. 本图钢筋尺寸标注除弯钩到钢筋边缘外,其余均到钢筋中心。",_=" 5. 钢筋数量表内数量未计纵向钢筋的搭接及损耗。 ",h=" 6. 图中未详尽处见有关规范、规定及设计图。",P=s+`
|
|
44
|
+
`+d+`
|
|
45
|
+
`+c+`
|
|
46
|
+
`+l+`
|
|
47
|
+
`+_+`
|
|
48
|
+
`+h+`
|
|
49
|
+
`;r.addMtext(o,P,4.5,1,100)}catch(o){console.log("错误代码 2302")}}static CalcGjsl_dh(i){i.Data;const n=i.Setting;i.Property,i.LinData;const e=i.SteelData;new Yi().CalcSteelGjsl(i);const t=[];for(let h=0;h<11;h++){t[h]=[];for(let P=0;P<7;P++)t[h][P]=""}""+n.PeiJin.Gjbjd.toString();const o=it.Bar(e.DiameterN678.toString()),s=it.Bar(e.DiameterN12.toString()).toFixed(n.PeiJin.Gjbjd),d=10/e.SpacingN1234;d.toFixed(3);const c="$"+e.DiameterN12.toFixed(0),l="!"+e.DiameterN678.toFixed(0);n.PeiJin.IsZwg&&(6.78*e.DiameterN12/1e3,6.78*e.DiameterN34/1e3);const _=e.steelQuantitys[0];return t[0][0]="N1",t[0][1]=c,t[0][2]=s,t[0][3]=_.number_MainBar_Out,t[0][4]=_.length_MainBar_Out,t[0][5]=(d*w.ToDouble(t[0][4])).toFixed(n.PeiJin.Gjbjd),t[0][6]=(w.ToDouble(t[0][2])*w.ToDouble(t[0][5])).toFixed(n.PeiJin.Gjbjd),t[1][0]="N2",t[1][1]=c,t[1][2]=s,t[1][3]=_.number_MainBar_In,t[1][4]=_.length_MainBar_In,t[1][5]=(d*w.ToDouble(t[1][4])).toFixed(n.PeiJin.Gjbjd),t[1][6]=(w.ToDouble(t[1][2])*w.ToDouble(t[1][5])).toFixed(n.PeiJin.Gjbjd),t[2][0]="HRB400钢筋小计",t[2][1]="",t[2][2]="",t[2][3]="",t[2][4]="",t[2][5]="",t[2][6]=(w.ToDouble(t[0][6])+w.ToDouble(t[1][6])).toFixed(n.PeiJin.Gjbjd),t[3][0]="N3",t[3][1]="!"+e.DiameterN5.toFixed(0),t[3][2]=it.Bar(e.DiameterN5.toString()).toFixed(n.PeiJin.Gjbjd),t[3][3]=_.number_VerticalBar,t[3][4]=_.length_VerticalBar,t[3][5]=(w.ToDouble(t[3][3])*w.ToDouble(t[3][4])).toFixed(n.PeiJin.Gjbjd),t[3][6]=(w.ToDouble(t[3][2])*w.ToDouble(t[3][5])).toFixed(n.PeiJin.Gjbjd),t[4][0]="N4",t[4][1]=l,t[4][2]=o.toFixed(n.PeiJin.Gjbjd),t[4][3]=_.number_HookBar_SameThick_Arch,t[4][4]=_.length_HookBar_SameThick_Arch,t[4][5]=(w.ToDouble(t[4][3])*w.ToDouble(t[4][4])).toFixed(n.PeiJin.Gjbjd),t[4][6]=(w.ToDouble(t[4][2])*w.ToDouble(t[4][5])).toFixed(n.PeiJin.Gjbjd),t[5][0]="N5",t[5][1]=l,t[5][2]=o.toFixed(n.PeiJin.Gjbjd),t[5][3]=_.number_HookBar_DiffThick_Wall,t[5][4]=_.length_HookBar_DiffThick_Wall+"(平均)",t[5][5]=(w.ToDouble(t[5][3])*w.ToDouble(_.length_HookBar_DiffThick_Wall)).toFixed(n.PeiJin.Gjbjd),t[5][6]=(w.ToDouble(t[5][2])*w.ToDouble(t[5][5])).toFixed(n.PeiJin.Gjbjd),t[6][0]="N6",t[6][1]=l,t[6][2]=o.toFixed(n.PeiJin.Gjbjd),t[6][3]=_.number_HookBar_DiffThick_Invert,t[6][4]=_.length_HookBar_DiffThick_Invert+"(平均)",t[6][5]=(w.ToDouble(t[6][3])*w.ToDouble(_.length_HookBar_DiffThick_Invert)).toFixed(n.PeiJin.Gjbjd),t[6][6]=(w.ToDouble(t[6][2])*w.ToDouble(t[6][5])).toFixed(n.PeiJin.Gjbjd),t[7][0]="N7",t[7][1]=l,t[7][2]=o.toFixed(n.PeiJin.Gjbjd),t[7][3]=_.number_HookBar_SameThick_Invert,t[7][4]=_.length_HookBar_SameThick_Invert,t[7][5]=(w.ToDouble(t[7][3])*w.ToDouble(t[7][4])).toFixed(n.PeiJin.Gjbjd),t[7][6]=(w.ToDouble(t[7][2])*w.ToDouble(t[7][5])).toFixed(n.PeiJin.Gjbjd),t[8][0]="HPB300钢筋小计",t[8][1]="",t[8][2]="",t[8][3]="",t[8][4]="",t[8][5]="",t[8][6]=(+w.ToDouble(t[3][6])+w.ToDouble(t[4][6])+w.ToDouble(t[5][6])+w.ToDouble(t[6][6])+w.ToDouble(t[7][6])).toFixed(n.PeiJin.Gjbjd),t[9][0]="钢筋合计",t[9][1]="",t[9][2]="",t[9][3]="",t[9][4]="",t[9][5]="",t[9][6]=(w.ToDouble(t[2][6])+w.ToDouble(t[8][6])).toFixed(n.PeiJin.Gjbjd),t[10][0]="钢筋接驳器: "+_.strRebarCoupler+"套",t[10][1]="",t[10][2]="",t[10][3]="",t[10][4]="",t[10][5]="",t[10][6]="",t}}class Wi extends Je{SteelDraw(i,n){new Ke().DrawSteelLk(i),new ki().Execute(i),new zi().Execute(i),new vi().Execute(i),new ce().Note1(i),new le().DrawTb(i),new qi().Execute(i),new Xe().DrawTk(i,2),new Qe().MoveDraw_Sx(i)}}class Zi extends en{CalcSteelFirst(i){const n=i.Setting,e=i.LinData,t=i.SteelData;try{const o=new Map,s=r.PolarPoint(e.O1,Math.PI/2-e.Radian_Arch1,t.RadiusFirstSteel1);if(n.ChenQi.Cqdm.Wlkxq){const d=r.PolarPoint(e.O2_y,-e.Radian_Widest_inDown,t.RadiusFirstSteel2),c=r.PolarPoint(d,Math.PI/2-e.Radian_Widest_inDown,1),l=A.IntsOfLineToCircle5P(e.O_Invert,t.RadiusFirstSteel3,d,c,"MinY"),_=Math.asin(l.x/t.RadiusFirstSteel3)*2,h=r.PolarPoint(e.O2_y,-e.Radian_Widest_inDown,t.RadiusFirstSteel2),P=l,u=new a.McGePoint3d(h.x,h.y,Math.tan(e.Radian_Widest_inAll/4)),p=new a.McGePoint3d(s.x,s.y,Math.tan(e.Radian_Arch1/2)),M=new a.McGePoint3d(-s.x,s.y,Math.tan(e.Radian_Widest_inAll/4)),g=new a.McGePoint3d(-h.x,h.y,0),C=new a.McGePoint3d(-l.x,l.y,Math.tan(_/4));o.set("ptFirstSteel1",P),o.set("ptFisrtSteel右增加点",u),o.set("ptFirstSteel_Y2",p),o.set("ptFirstSteel_Y4",M),o.set("ptFisrtSteel左增加点",g),o.set("ptFirstSteel_Z4",C),o.set("100ptFirst_Y1",P)}else{const d=A.IntsOfCircleToCircle(e.O_Invert,t.RadiusFirstSteel3,e.O2_y,t.RadiusFirstSteel2,"MinY"),c=Math.asin(d.x/t.RadiusFirstSteel3)*2,l=e.Radian_Widest_inUp+Math.acos((Math.abs(d.x)+Math.abs(e.O2_z.x))/t.RadiusFirstSteel2),_=new a.McGePoint3d(d.x,d.y,Math.tan(l/4)),h=new a.McGePoint3d(s.x,s.y,Math.tan(e.Radian_Arch1/2)),P=new a.McGePoint3d(-s.x,s.y,Math.tan(l/4)),u=new a.McGePoint3d(-d.x,d.y,Math.tan(c/4));o.set("ptFirstSteel_Y2",_),o.set("ptFirstSteel_Y4",h),o.set("ptFirstSteel_Z4",P),o.set("ptFirstSteel_Z2",u),o.set("100ptFirst_Y2",_)}return o}catch(o){return new Map}}CalcSteelSecond(i){const n=i.LinData,e=i.SteelData,t=new Map,o=r.PolarPoint(n.O2_y,-n.Radian_Widest_outDown,e.RadiusSecondSteel2),s=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,e.RadiusSecondSteel1),d=r.PolarPoint(o,Math.PI*3/2-n.Radian_Widest_outDown,1),c=A.IntsOfLineToCircle5P(n.O_Invert,e.RadiusSecondSteel3,d,o,"MinY"),l=Math.asin(c.x/e.RadiusSecondSteel3)*2,_=new a.McGePoint3d(o.x,o.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),h=new a.McGePoint3d(s.x,s.y,Math.tan(n.Radian_Arch1/2)),P=new a.McGePoint3d(-s.x,s.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),u=new a.McGePoint3d(-_.x,_.y,0),p=new a.McGePoint3d(-c.x,c.y,Math.tan(l/4));return t.set("ptSteelSecond_Y2",c),t.set("ptSteelSecond_Y3",_),t.set("ptSteelSecond_Y4",h),t.set("ptSteelSecond_Z4",P),t.set("ptSteelSecond_Z3",u),t.set("ptSteelSecond_Z2",p),t.set("100ptSteelSecond_Y2",c),t}CalcSteelCenter(i){const n=i.LinData,e=i.SteelData,t=new Map,o=r.PolarPoint(n.O2_y,-n.Radian_Widest_outDown,e.RadiusCenterSteel2),s=r.PolarPoint(n.O1,Math.PI/2-n.Radian_Arch1,e.RadiusCenterSteel1),d=r.PolarPoint(o,Math.PI*3/2-n.Radian_Widest_outDown,1),c=A.IntsOfLineToCircle5P(n.O_Invert,e.RadiusCenterSteel3,d,o,"MinY"),l=Math.asin(c.x/e.RadiusCenterSteel3)*2,_=new a.McGePoint3d(o.x,o.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),h=new a.McGePoint3d(s.x,s.y,Math.tan(n.Radian_Arch1/2)),P=new a.McGePoint3d(-s.x,s.y,Math.tan((n.Radian_Widest_outDown+n.Radian_Widest_inUp)/4)),u=new a.McGePoint3d(-_.x,_.y,0),p=new a.McGePoint3d(-c.x,c.y,Math.tan(l/4));return t.set("ptSteelCenter_Y2",c),t.set("ptSteelCenter_Y3",_),t.set("ptSteelCenter_Y4",h),t.set("ptSteelCenter_Z4",P),t.set("ptSteelCenter_Z3",u),t.set("ptSteelCenter_Z2",p),t.set("100ptSteelCenter_Y2",c),t}}class Ei{Draw_gzHw(i,n){}Draw_Gs(i,n){}}class Vi{CalcFramOut_Gq(i){return{}}CalcFramIn_Gq(i){return{}}CalcFramCen_Gq(i){return{}}CalcFramOut_Yg(i){return{}}CalcFramCen_Yg(i){return{}}CalcFramIn_Yg(i){return{}}}class Ji{InitFramJoint(i,n){}}const Qi=[["衬砌图图号","衬砌图大图名","衬砌图小图名","绘制日期","轨道类型","d1-拱墙衬砌厚度","t1-拱墙预留变形","m1-拱墙初支厚度","d2-仰拱衬砌厚度","m2-仰拱初支厚度","锚杆纵向间距","锚杆纵向间距","左拱部-环向间距","左拱部-锚杆长度","右拱部-环向间距","右拱部-锚杆长度","左边墙-环向间距","左边墙-锚杆长度","右边墙-环向间距","右边墙-锚杆长度","Bw-钢筋网网格间距","Fwi-钢筋网直径(mm)","Pw-钢筋网设置部位","Pm-锚杆设置部位","拱墙仰拱砼材料","喷砼材料","图号(钢筋图一)","小图名(钢筋图一)","图名(钢筋图二)","小图号(钢筋图二)","拱墙主筋直径","仰拱主筋直径","主筋间距","纵向筋直径","钩筋直径","钩筋间距","靠初支侧保护层","靠内侧保护层","图号(钢架图一)","小图名(钢架图一)","图号(钢架图二)","小图名(钢架图二)",'钢架型号(双层以"/"隔开)',"设置部位","初喷厚度","仰拱D单元角度","边脚延伸至平台以下","钢架预留变形量","锁脚类型(锚杆/锚管)","锁脚长度","适用段落"],["0093-25","时速200km客货共线电化铁路单线隧道接触网下锚区段复合式衬砌(普通货物运输)","Ⅴ级围岩Ⅴ[c]型非绝缘一般锚段衬砌断面","2013.2","有砟","45","8~10","25","45","25","","","","","","","","","","","20","8","拱墙","拱墙","C35钢筋混凝土","C30早高强喷射混凝土","(11)0093-26","Ⅴ级围岩Ⅴ[c]型非绝缘一般锚段衬砌钢筋布置图(一)","(11)0093-27","Ⅴ级围岩Ⅴ[c]型非绝缘一般锚段衬砌钢筋布置图(二)","20","20","250","12","8","250","55","55","(11)0093-140","Ⅴ级围岩Ⅴ[c]型非绝缘一般锚段衬砌四肢格栅钢架图(一)","(11)0093-141","Ⅴ级围岩Ⅴ[c]型非绝缘一般锚段衬砌四肢格栅钢架图(二)","I18","全环","4","30","20","9","22锚杆","450","Ⅴ级围岩浅埋偏压、断层破碎段地段"]];class sn extends nn{constructor(){super();be(this,"globalData",null)}ReadData(n,e){try{const t={};return t.Cq=this.ReadCq(n,e),t.Gj=Li.ReadGj1(n,e),t.Pj=xi.ReadPj1(n,e),t}catch(t){return console.error("读取第"+e+"行数据出错",t),null}}ReadCq(n,e){try{const t={};return t.Cqtk=sn.ReadCqtk(n,e),t.Zhcs=Ge.ReadZhcs(n,e),t.Dmcc=Ge.ReadDmcc(n,e),t.Jzcl=Ge.ReadJzcl(n,e),t.Sydl=Ge.ReadSydl(n,e),t}catch(t){return console.error("读取第"+e+"行数据出错,错误代码205 ReadCq",t),null}}static ReadCqtk(n,e){try{const t={};return t.Th=n.getCellTextValue(e,0).trim(),t.Dtm=n.getCellTextValue(e,1).trim(),t.Xtm=n.getCellTextValue(e,2).trim(),t.Htrq=n.getCellTextValue(e,3).trim(),t.Gdlx=n.getCellTextValue(e,4).trim(),t}catch(t){return console.error("读取第"+e+"行数据出错,错误代码201 ReadCqsj",t),null}}init_Plugin(n){let e;try{Tt.fixStyle();const t=new a.McGePoint3d;e=r.UcsToWcs(t);const o=n||Qi;if(o==null){console.error("请先读取断面数据!","提示");return}for(let s=0;s<o.length-1;s++){this.globalData=new De,this.globalData.Setting=this.LoadSetting(this.TunnelType),this.globalData.LinData=new Ti,this.globalData.FramData=new Fi,this.globalData.SteelData=new Ri;const d=new a.McDbXlsxTable;d.setFromArray(o);const c=this.ReadData(d,s+1);c&&(this.globalData.Data=c);const l=r.PolarPoint(e,Math.PI*3/2,s*450),_=r.PolarPoint(l,0,450*3),h=r.PolarPoint(l,0,450*7);if(c&&c.Pj&&c.Pj.Pjcs&&!(c.Pj.Pjcs.DiameterN12==0||c.Pj.Pjcs.DiameterN34==0||c.Pj.Pjcs.SpacingN1234==0||c.Pj.Pjcs.DiameterN5==0||c.Pj.Pjcs.DiameterN678==0||c.Pj.Pjcs.SpacingN678==0||c.Pj.Pjcs.TProtectiveCover_W==0)&&new je().InitializeAndRunSteel(_,this.globalData,this.GetBaseClass(),this.TunnelType),new pe().InitializeAndRunLining(l,this.globalData,this.GetBaseClass(),this.TunnelType),c&&c.Gj&&c.Gj.Gjcs&&!(c.Gj.Gjcs.Thick==0||c.Gj.Gjcs.Thick_Cp==0))switch(c.Gj.Gjcs.Gj_style){case ut.GSGJ4:break;case ut.GZGJ:case ut.HWGJ:break;case ut.GSGJ3:break}}}catch(t){console.error("绘图出错",t)}finally{}}GetBaseClass(){const n=new Ut;return n.Cq=new $t,n.Cq.linDataHelper=new wi,n.Cq.liningCalcHelper=new de,n.Cq.liningBase=new Ni,n.Pj=new Nt,n.Pj.steelBase=new Wi,n.Pj.steelCalcHelper=new Zi,n.Pj.steelDataHelper=new Gi,n.Gj=new Lt,n.Gj.framDataHelper=new fi,n.Gj.framCalcHelper=new Vi,n.Gj.framBase=new Ei,n.Gj.InitFramJointsBase=new Ji,n}}class Qt{static DL5(i,n){Tt.fixStyle("SDHZ","L1-100","",3.5,10,"Tunnel Table Style");const e=new Re;e.TunnelType=ot.DL5Center,e.init_Plugin(n)}static DL5P(i,n){Tt.fixStyle("SDHZ","L1-100","",3.5,10,"Tunnel Table Style");const e=new Re;e.TunnelType=ot.DL5Center,e.init_Plugin_Part(n)}static DL200(i,n){Tt.fixStyle("SDHZ","L1-100","",3.5,10,"Tunnel Table Style");const e=new Ii;e.TunnelType=ot.Sx160to350,e.init_Plugin(n)}static SL160(i,n){Tt.fixStyle("SDHZ","L1-100","",3.5,10,"Tunnel Table Style");const e=new sn;e.TunnelType=ot.SL160,e.init_Plugin(n)}static SL140(i,n){Tt.fixStyle("SDHZ","L1-100","",3.5,10,"Tunnel Table Style"),new Re().init_Plugin(n)}static SL4(i,n){Tt.fixStyle("SDHZ","L1-100","",3.5,10,"Tunnel Table Style"),new Re().init_Plugin(n)}}Pt.MxFun.addCommand("DL5",Qt.DL5),Pt.MxFun.addCommand("DL200",Qt.DL200),Pt.MxFun.addCommand("SL4",Qt.SL4),Pt.MxFun.addCommand("SL160",Qt.SL160),Pt.MxFun.addCommand("SL140",Qt.SL140);const Ki={name:"TunnelLining",props:{config:{type:Object,default:()=>({})},locateFilePath:{type:String,default:""},width:{type:String,default:"100vw"},height:{type:String,default:"100vh"},autoInit:{type:Boolean,default:!0}},data(){return{mxcad:null,fontsLoaded:!1,isInitialized:!1,menuFiles:{default:"/menu/MxPopMenu.mnu",entity:"/menu/MxPopMenuEnt.mnu",command:"/menu/mxpoptest.mnu"}}},mounted(){this.autoInit&&this.init()},methods:{init(){if(this.isInitialized){console.warn("组件已经初始化过");return}try{this.preloadFonts(),this.fontsLoaded=!0,this.initializeMxCad(),this.isInitialized=!0,console.log("组件初始化完成"),this.$emit("init-complete",this.mxcad)}catch(D){console.error("组件初始化失败:",D),this.$emit("init-error",D)}},preloadFonts(){return new Promise(D=>Pe(this,null,function*(){console.log("验证CAD .shx字体文件..."),setTimeout(()=>D(),200)}))},initializeMxCad(){return new Promise((D,i)=>{a.createMxCad({canvas:"#myCanvas",fontsPath:"./fonts/",locateFile:n=>{if(n.endsWith(".shx")||n.endsWith(".SHX")){const e=`./fonts/${n}`;return console.log(`📁 CAD字体请求: ${n} -> ${e}`),e}return`${this.locateFilePath}${n}`},onOpenFileComplete:()=>{this.onOpenFileCompleteHandler()}}).then(n=>{console.log("MxCad实例创建成功"),this.mxcad=n,this.initMouseEvents(),setTimeout(()=>{this.setupFonts()},1e3),setTimeout(()=>{this.drawCustomGraphics()},2e3),D(n)}).catch(i)})},setupFonts(){if(console.log("🎨 按照文档设置 SHX 字体..."),!a.MxCpp||!a.MxCpp.App){console.warn("MxCpp.App 不可用");return}try{console.log("1. 使用 addNetworkLoadingFont 加载 SHX 字体..."),a.MxCpp.App.addNetworkLoadingFont(["SD_NUM_NEW.shx"]),console.log("✅ SHX 字体注册完成"),console.log("2. 加载字体..."),a.MxCpp.App.loadFonts([],[],["SD_NUM_NEW.shx"],()=>{console.log("✅ 字体加载回调执行"),this.createTextStyle()})}catch(D){console.error("字体设置失败:",D),setTimeout(()=>{this.createTextStyle()},500)}},createTextStyle(){if(!this.mxcad){console.warn("MxCad实例未就绪");return}console.log("3. 创建文本样式...");try{this.mxcad.AddTureTypeTextStyle&&(this.mxcad.AddTureTypeTextStyle("NUM_STYLE","SD_NUM_NEW.shx"),console.log("✅ 创建文本样式使用字体: SD_NUM_NEW.shx")),this.mxcad.drawTextStyle!==void 0&&(this.mxcad.drawTextStyle="NUM_STYLE",console.log("✅ 设置当前绘图样式为 NUM_STYLE"))}catch(D){console.error("创建文本样式失败:",D)}},initMouseEvents(){this.mxcad&&(this.mxcad.implementMouseEvent=(D,i,n)=>n===3?(this.handleRightClick(D,i),1):0)},handleRightClick(D,i){if(this.mxcad)try{const n=this.mxcad.call("Mx_IsRuningCommand",""),e=n.AtString(0),t=n.AtString(1);let o;if(e==="Ok"&&t!=="intellisel")o=this.menuFiles.command;else{const s=this.mxcad.newResbuf(),d=this.mxcad.findEntAtPoint(D,i,s);d!==null?(this.mxcad.clearCurrentSelect(),this.mxcad.addCurrentSelect(d.ObjectID,!0,!0),o=this.menuFiles.entity):o=this.menuFiles.default}this.mxcad.trackPopupMenu(D,i,o)}catch(n){console.error("右键菜单处理错误:",n)}},onOpenFileCompleteHandler(){console.log("CAD文件加载完成")},drawCustomGraphics(){return Pe(this,null,function*(){if(!this.mxcad){console.error("MxCad实例尚未初始化");return}try{const D=this.mxcad.getDatabase();if(!D){console.error("数据库未初始化");return}D.eraseAll&&D.eraseAll(),console.log("🔄 等待字体完全加载..."),console.log("✅ 字体已就绪,开始生成图形");const i=new a.McGePoint3d(0,0,0);Qt.DL200(i,this.config),yield new Promise(n=>setTimeout(n,150)),this.refreshDisplay(),this.mxcad.zoomAll(),this.mxcad.zoomScale(.8)}catch(D){console.error("图形加载或显示错误:",D)}})},ensureFontsReady(){return new Promise(D=>{console.log("⏳ 检查字体就绪状态...");const i=()=>{try{this.mxcad.getDatabase().getTextStyleTable().has("NUM_STYLE")?(console.log("✅ NUM_STYLE 已就绪"),D()):(console.log("⏳ 等待 NUM_STYLE 创建..."),setTimeout(i,500))}catch(n){console.log("⏳ 等待样式表就绪..."),setTimeout(i,500)}};i()})},refreshDisplay(){this.mxcad&&this.mxcad.updateDisplay&&this.mxcad.updateDisplay()}}},qs="",Xi=(D,i)=>{const n=D.__vccOpts||D;for(const[e,t]of i)n[e]=t;return n};function Ui(D,i,n,e,t,o){return St.openBlock(),St.createElementBlock("div",{style:St.normalizeStyle({width:this.width,height:this.height,overflow:"hidden"})},[...i[0]||(i[0]=[St.createElementVNode("canvas",{id:"myCanvas"},null,-1)])],4)}const rn=Xi(Ki,[["render",Ui],["__scopeId","data-v-419cf772"],["__file","DL200.vue"]]),Vn=function(D){Vn.installed||D.component(rn.name,rn)};return{install:Vn,DL200:rn}});
|
|
50
|
+
//# sourceMappingURL=dl200plugin.umd.js.map
|