示例#1
0
        static void Start()
        {
            objectPreviews = new Dictionary <Guid, ObjectPreviewServer>();

            using (var service = ExternalServiceRegistry.GetService(ExternalServices.BuiltInExternalServices.DirectContext3DService) as MultiServerService)
            {
                var activeServerIds = service.GetActiveServerIds();
                foreach (var o in ActiveDocument.Objects)
                {
                    if (!ObjectPrimitive.IsSupportedObject(o, true))
                    {
                        continue;
                    }

                    var preview  = new ObjectPreviewServer(o);
                    var serverId = preview.GetServerId();
                    objectPreviews.Add(serverId, preview);
                    service.AddServer(preview);
                    activeServerIds.Add(serverId);
                }
                service.SetActiveServers(activeServerIds);
            }

            Revit.RefreshActiveView();
        }
示例#2
0
 public Result Execute(ExternalCommandData data, ref string message, ElementSet elements)
 {
     ObjectPreviewServer.Toggle();
     return(Result.Succeeded);
 }