예제 #1
0
        public static Ceiling Transform(this Ceiling ceiling, TransformMatrix transform, double tolerance = Tolerance.Distance)
        {
            if (!transform.IsRigidTransformation(tolerance))
            {
                BH.Engine.Reflection.Compute.RecordError("Transformation failed: only rigid body transformations are currently supported.");
                return(null);
            }

            Ceiling result = ceiling.ShallowClone();

            result.Surface = result.Surface.ITransform(transform);
            result.Tiles   = result.Tiles.Select(x => x.Transform(transform)).ToList();
            return(result);
        }