Exemplo n.º 1
0
        public static Face GetFace(FilledRegion fr, Options options)
        {
            GeometryElement geometryElement = fr.get_Geometry(options);

            foreach (GeometryObject go in geometryElement)
            {
                Solid solid = go as Solid;
                return(solid.Faces.get_Item(0));
            }
            return(null);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 获取详图区域的Edges
        /// </summary>
        public static List <Edge> Edges(this FilledRegion filledRegion, View _view)
        {
            Options options = new Options();

            options.View = _view;
            options.ComputeReferences = true;
            GeometryElement geometryElement = filledRegion.get_Geometry(options);

            Solid solid = geometryElement.First() as Solid;

            return(solid.Edges.ToIEnumerable().ToList());
        }
Exemplo n.º 3
0
        private static IEnumerable <Edge> FindRegionEdges(FilledRegion filledRegion)
        {
            var view = (View)filledRegion.Document.GetElement(filledRegion.OwnerViewId);

            var options = new Options
            {
                View = view,
                ComputeReferences = true
            };

            return(filledRegion
                   .get_Geometry(options)
                   .OfType <Solid>()
                   .SelectMany(x => x.Edges.Cast <Edge>()));
        }
Exemplo n.º 4
0
        private static Solid GetSolid(FilledRegion fr, Options options)
        {
            GeometryElement geometryElement = fr.get_Geometry(options);

            return(geometryElement.Select(go => go as Solid).FirstOrDefault());
        }