Beispiel #1
0
        public static IBody2[] GetBodiesTs(this IModelDoc2 doc, swBodyType_e type = swBodyType_e.swSolidBody,
                                           bool visibleOnly = false)
        {
            var part    = (IPartDoc)doc;
            var objects = (object[])part.GetBodies2((int)type, visibleOnly);

            return(objects?.Cast <IBody2>().ToArray() ?? new IBody2[0]);
        }
Beispiel #2
0
        public static IEnumerable <IBody2> GetBodiesEx(this IPartDoc doc, swBodyType_e bodyType = swBodyType_e.swSolidBody, bool withInvisbleBody = false)
        {
            object[] bodies = doc.GetBodies2((int)bodyType, !withInvisbleBody) as object[];

            if (bodies == null)
            {
                yield break;
            }

            foreach (var item in bodies)
            {
                yield return(item as IBody2);
            }
        }
Beispiel #3
0
        public static void UsingAllBody(this Component2 comp, Action <Body2> action, swBodyType_e bodyType_E, bool VisbleOnly = false)
        {
            var bodys = comp.GetBodies2((int)bodyType_E) as Body2[];

            foreach (var item in bodys)
            {
                if (VisbleOnly && item.Visible)
                {
                    action(item);
                }
                else
                {
                    action(item);
                }
            }
        }