Example #1
0
        // Token: 0x060000EA RID: 234 RVA: 0x000092AC File Offset: 0x000074AC
        protected override MountingPartData getDoorWindowData(RevitElement <FamilyInstance> familyInstance, RevitElement <Part> part)
        {
            ItGeBoundBlock3d   localExtents  = familyInstance.Element.getLocalExtents();
            ItGeVector3d       viewDirection = base.getViewDirection();
            ItGeMatrix3d       ecsToWcs      = familyInstance.Element.ecs();
            bool               flag;
            List <ItGePoint3d> contourFromElement = ItMachineDataBase.getContourFromElement(familyInstance.To <Element>(), part, ecsToWcs, viewDirection, out flag);
            bool               flag2 = contourFromElement.none <ItGePoint3d>() || contourFromElement.Count < 3;
            MountingPartData   result;

            if (flag2)
            {
                ItFailures.PostFailure(ItFailures.CAMObjectWithoutValidGeometry, familyInstance.Id);
                result = null;
            }
            else
            {
                contourFromElement.transformBy(base.MatWcsToPalette);
                localExtents.transformBy(base.MatWcsToPalette);
                MountingPartData mountingPartData = new MountingPartData
                {
                    ElementId = familyInstance.Id,
                    Contour   = contourFromElement,
                    Height    = localExtents.maxPoint.z - localExtents.minPoint.z,
                    IsOpeningWithoutGeometry = !flag,
                    Type = MountingPartData.Types.DoorWindow,
                    InstallationHeight = localExtents.minPoint.z,
                    Name     = familyInstance.Element.Name,
                    UniqueId = familyInstance.UniqueId
                };
                result = mountingPartData;
            }
            return(result);
        }
        // Token: 0x060001DE RID: 478 RVA: 0x0000CED8 File Offset: 0x0000B0D8
        private void UnitechnikWriteRebarAsMountPart()
        {
            bool flag = base.IronSetsSchematic.none <List <ItGeCurve3d> >();

            if (!flag)
            {
                ItGeBoundBlock3d boundBlockOfIrons = this.GetBoundBlockOfIrons();
                bool             flag2             = boundBlockOfIrons.isNull();
                if (!flag2)
                {
                    List <ItGePoint3d> list  = new List <ItGePoint3d>();
                    ItGePoint3d        item  = new ItGePoint3d(boundBlockOfIrons.minPoint);
                    ItGePoint3d        item2 = new ItGePoint3d(boundBlockOfIrons.minPoint.x, boundBlockOfIrons.maxPoint.y, boundBlockOfIrons.minPoint.z, null);
                    ItGePoint3d        item3 = new ItGePoint3d(boundBlockOfIrons.maxPoint.x, boundBlockOfIrons.maxPoint.y, boundBlockOfIrons.minPoint.z, null);
                    ItGePoint3d        item4 = new ItGePoint3d(boundBlockOfIrons.maxPoint.x, boundBlockOfIrons.minPoint.y, boundBlockOfIrons.minPoint.z, null);
                    list.Add(item);
                    list.Add(item2);
                    list.Add(item3);
                    list.Add(item4);
                    double           height             = boundBlockOfIrons.maxPoint.z - boundBlockOfIrons.minPoint.z + base.RebarBarType.BarDiameter;
                    double           installationHeight = boundBlockOfIrons.minPoint.z - base.RebarBarType.BarDiameter / 2.0;
                    MountingPartData item5 = new MountingPartData
                    {
                        Contour            = list,
                        Height             = height,
                        InstallationHeight = installationHeight,
                        Name      = this.Rebar.Element.Name,
                        Type      = MountingPartData.Types.Rebar,
                        ElementId = this.Rebar.Id,
                        IsOpeningWithoutGeometry = false,
                        UniqueId = this.Rebar.UniqueId
                    };
                    base.CNCElementData.MountingParts.Add(item5);
                }
            }
        }