Пример #1
0
        /// <summary>
        /// Extrude Roof by Outline, Referenceplane
        /// </summary>
        /// <param name="outline"></param>
        /// <param name="roofType"></param>
        /// <param name="level"></param>
        /// <param name="plane"></param>
        /// <param name="extrusionStart"></param>
        /// <param name="extrusionEnd"></param>
        /// <returns></returns>
        public static Roof ByOutlineExtrusionTypeAndLevel(PolyCurve outline, RoofType roofType, Level level, ReferencePlane plane, double extrusionStart, double extrusionEnd)
        {
            if (!outline.IsClosed)
            {
                throw new ArgumentException(Properties.Resources.OpenInputPolyCurveError);
            }

            var ca = new CurveArray();

            outline.Curves().ForEach(x => ca.Append(x.ToRevitType()));

            var roof = new Roof(ca, plane.InternalReferencePlane, level.InternalLevel, roofType.InternalRoofType, extrusionStart, extrusionEnd);

            DocumentManager.Regenerate();
            return(roof);
        }
Пример #2
0
 public static ReferencePlane Wrap(Autodesk.Revit.DB.ReferencePlane ele, bool isRevitOwned)
 {
     return(ReferencePlane.FromExisting(ele, isRevitOwned));
 }