Esempio n. 1
0
 private void GetCameraViews()
 {
     try
     {
         var collector   = new FilteredElementCollector(ModelDoc);
         var threeDViews = collector.OfClass(typeof(View3D)).ToElements().Cast <View3D>().ToList();
         foreach (var view in threeDViews)
         {
             if (view.ViewType != ViewType.ThreeD)
             {
                 continue;
             }
             if (view.IsTemplate)
             {
                 continue;
             }
             if (view.IsPerspective)
             {
                 var viewInfo = new CameraViewInfo(view);
                 if (worksetIds.Count > 0)
                 {
                     viewInfo.GetWorksetVisibilities(view, worksetIds);
                 }
                 if (!CameraViews.ContainsKey(viewInfo.ViewId))
                 {
                     CameraViews.Add(viewInfo.ViewId, viewInfo);
                 }
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show("Failed to get camera views.\n" + ex.Message, "Get Camera Views", MessageBoxButton.OK, MessageBoxImage.Warning);
     }
 }