/// <summary> /// Filters items from a given source returning only persistable items inside the Build Volume /// </summary> /// <param name="source">The source content to filter</param> /// <param name="printer">The printer config to consider</param> /// <returns>An enumerable set of printable items</returns> public static IEnumerable <IObject3D> PrintableItems(this PrinterConfig printer, IObject3D source) { return(source.VisibleMeshes().Where(item => item.WorldPersistable() && printer.InsideBuildVolume(item) && printer.InsideHotendBounds(item) && !item.GetType().GetCustomAttributes(typeof(NonPrintableAttribute), true).Any())); }
/// <summary> /// Filters items from a given source returning only persistable items inside the Build Volume /// </summary> /// <param name="source">The source content to filter</param> /// <param name="printer">The printer config to consider</param> /// <returns></returns> public static IEnumerable <IObject3D> PrintableItems(this PrinterConfig printer, IObject3D source) { return(source.VisibleMeshes().Where(item => printer.InsideBuildVolume(item) && item.WorldPersistable())); }