// Token: 0x0600006E RID: 110 RVA: 0x0000522C File Offset: 0x0000342C protected override bool ExportPxml(AssemblyInstance assemblyInstance, IEnumerable <RevitElement <Part> > part, ItDocument cncDoc, CNCProjectData projectData) { RevitElement <Part> firstShell; RevitElement <Part> secondShell; ItMachineDataWallML.GetShells(assemblyInstance, out firstShell, out secondShell); ItMachineDataWallDB.DbwElementData dbwElementData = new ItMachineDataWallDB.DbwElementData(base.MatWcsToPalette, firstShell, secondShell); ItMachineDataWallDB.DetermineCombinedBoundingBox(dbwElementData); ItMachineDataWallDB.DetermineDoubleWallGap(dbwElementData); int doubleWallGapInMM = (int)Math.Round(dbwElementData.Gap.FeetToMeter() * 1000.0); ItMachineDataWallDB.DetermineShellTransformations(dbwElementData); bool flag = this.ExportShellToPxml(cncDoc, assemblyInstance, projectData, dbwElementData.FirstShell, doubleWallGapInMM); bool flag2 = !flag; bool result; if (flag2) { result = false; } else { flag = this.ExportShellToPxml(cncDoc, assemblyInstance, projectData, dbwElementData.SecondShell, doubleWallGapInMM); result = flag; } return(result); }
// Token: 0x06000073 RID: 115 RVA: 0x000054A0 File Offset: 0x000036A0 private static void DetermineDoubleWallGap(ItMachineDataWallDB.DbwElementData data) { double num = data.FirstShell.Part.thickness(); double num2 = data.SecondShell.Part.thickness(); double num3 = data.BoxOnPalette.maxPoint.z - data.BoxOnPalette.minPoint.z; double gap = num3 - num - num2; data.Gap = gap; }
// Token: 0x06000074 RID: 116 RVA: 0x00005500 File Offset: 0x00003700 private static void DetermineCombinedBoundingBox(ItMachineDataWallDB.DbwElementData data) { ItDebug.assert(data != null, "Failure in: "); data.FirstShell.BoxOnPalette = data.FirstShell.Part.getWorldExtents(false).GetTransformed(data.MatWcsToPalette); data.SecondShell.BoxOnPalette = data.SecondShell.Part.getWorldExtents(false).GetTransformed(data.MatWcsToPalette); ItGeBoundBlock3d boxOnPalette = data.FirstShell.BoxOnPalette; ItDebug.assert(boxOnPalette != null && data.SecondShell.BoxOnPalette != null, "Failure in: "); boxOnPalette.extend(data.SecondShell.BoxOnPalette.minPoint); boxOnPalette.extend(data.SecondShell.BoxOnPalette.maxPoint); data.BoxOnPalette = boxOnPalette; }
// Token: 0x06000070 RID: 112 RVA: 0x00005364 File Offset: 0x00003564 private static void DetermineShellTransformations(ItMachineDataWallDB.DbwElementData data) { Action <ItMachineDataWallDB.DbwElementData.Shell, ItGePoint3d, ItGeMatrix3d> action = delegate(ItMachineDataWallDB.DbwElementData.Shell shellData, ItGePoint3d absoluteZero, ItGeMatrix3d matWcsToPalette) { ItGePoint3d minPoint = shellData.BoxOnPalette.minPoint; shellData.ZeroOffset = absoluteZero - minPoint; shellData.Transformation = ItGeMatrix3d.translation(shellData.ZeroOffset) * matWcsToPalette; }; action(data.FirstShell, data.BoxOnPalette.minPoint, data.MatWcsToPalette); action(data.SecondShell, data.BoxOnPalette.minPoint, data.MatWcsToPalette); }