Example #1
0
        public BlockDefinition BlockDefinitionToSpeckle(RH.InstanceDefinition definition)
        {
            var geometry = new List <Base>();

            foreach (var obj in definition.GetObjects())
            {
                if (CanConvertToSpeckle(obj))
                {
                    Base converted = ConvertToSpeckle(obj);
                    if (converted != null)
                    {
                        converted["Layer"] = Doc.Layers[obj.Attributes.LayerIndex].FullPath;
                        geometry.Add(converted);
                    }
                }
            }

            var _definition = new BlockDefinition()
            {
                name      = definition.Name,
                basePoint = PointToSpeckle(Point3d.Origin), // rhino by default sets selected block def base pt at world origin
                geometry  = geometry,
                units     = ModelUnits
            };

            return(_definition);
        }