ArcGIS Pro 3.1 API Reference Guide
ArcGIS.Core.CIM Namespace / CIMBookmark Class / Camera Property

In This Topic
    Camera Property (CIMBookmark)
    In This Topic
    Gets or sets the camera.
    public CIMViewCamera Camera {get; set;}
    Public Property Camera As CIMViewCamera
    Add New Bookmark from CIMBookmark
    public Task<Bookmark> AddBookmarkFromCameraAsync(Camera camera, string name)
      return QueuedTask.Run(() =>
        //Set properties for Camera
        CIMViewCamera cimCamera = new CIMViewCamera()
          X = camera.X,
          Y = camera.Y,
          Z = camera.Z,
          Scale = camera.Scale,
          Pitch = camera.Pitch,
          Heading = camera.Heading,
          Roll = camera.Roll
        //Create new CIM bookmark and populate its properties
        var cimBookmark = new CIMBookmark() { Camera = cimCamera, Name = name, ThumbnailImagePath = "" };
        //Get the active map view.
        var mapView = MapView.Active;
        if (mapView == null)
          return null;
        //Add a new bookmark for the active map.
        return mapView.Map.AddBookmark(cimBookmark);
    Update Extent for a Bookmark
    public Task UpdateBookmarkExtentAsync(Bookmark bookmark, ArcGIS.Core.Geometry.Envelope envelope)
      return QueuedTask.Run(() =>
        //Get the bookmark's definition
        var bookmarkDef = bookmark.GetDefinition();
        //Modify the bookmark's location
        bookmarkDef.Location = envelope;
        //Clear the camera as it is no longer valid.
        bookmarkDef.Camera = null;
        //Set the bookmark definition

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3.0 or higher.
    See Also