import FreeCAD # Функция для получения списка всех объектов с заданным свойством def get_objects_with_property(property_name, property_value): result = [] for obj in FreeCAD.ActiveDocument.Objects: if hasattr(obj, "PropertiesList") and property_name in obj.PropertiesList: if obj.getPropertyByName(property_name) == property_value: result.append(obj) return result # Получение списка всех объектов с названием тела в свойстве bodies = get_objects_with_property("BodyName", "Body") # Получение списка всех объектов all_objects = FreeCAD.ActiveDocument.Objects # Поиск и вывод тел, у которых нет связанных вспомогательных объектов for body in bodies: linked_objects = [] for obj in all_objects: if obj.hasLinkOf(body): linked_objects.append(obj.Name) if not linked_objects: print(f"Тело без связанных объектов: {body.Name}")