/// <summary> /// Set average mesh size to slab. /// </summary> /// <remarks>Action</remarks> /// <param name="slab">Slab.</param> /// <param name="avgMeshSize">Average mesh size.</param> /// <returns></returns> public static Slab AverageSurfaceElementSize(Slab slab, double avgMeshSize) { // deep clone. downstreams objs will contain changes made in this method, upstream objs will not. // downstream and uppstream objs will share guid. Slab slabClone = slab.DeepClone(); // slabClone.SlabPart.MeshSize = avgMeshSize; // return return(slabClone); }
/// <summary> /// Set EdgeConnections by indices. /// </summary> /// <param name="slab">Slab.</param> /// <param name="shellEdgeConnection">EdgeConnection.</param> /// <param name="index">Index of edge to set.</param> public static Slab EdgeConnection(Slab slab, EdgeConnection shellEdgeConnection, int index) { // deep clone. downstreams objs will contain changes made in this method, upstream objs will not. // downstream and uppstream objs will share guid. Slab slabClone = slab.DeepClone(); if (index < 0 & index >= slabClone.SlabPart.GetEdgeConnections().Count) { throw new System.ArgumentException("Index is out of bounds."); } slabClone.SlabPart.Region.SetEdgeConnection(shellEdgeConnection, index); return(slabClone); }