A latitude-longitude viewport, represented as two diagonally opposite low and high points. A viewport is considered a closed region, i.e. it includes its boundary. The latitude bounds must range between -90 to 90 degrees inclusive, and the longitude bounds must range between -180 to 180 degrees inclusive. Various cases include:
If low = high, the viewport consists of that single point.
If low.longitude > high.longitude, the longitude range is inverted (the viewport crosses the 180 degree longitude line).
If low.longitude = -180 degrees and high.longitude = 180 degrees, the viewport includes all longitudes.
If low.longitude = 180 degrees and high.longitude = -180 degrees, the longitude range is empty.
If low.latitude > high.latitude, the latitude range is empty.
Both low and high must be populated, and the represented box cannot be empty (as specified by the definitions above). An empty viewport will result in an error.
For example, this viewport fully encloses New York City:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-27 UTC."],[[["\u003cp\u003eA Viewport is defined by two points, \u003ccode\u003elow\u003c/code\u003e and \u003ccode\u003ehigh\u003c/code\u003e, representing its southwest and northeast corners, forming a rectangular area on a map.\u003c/p\u003e\n"],["\u003cp\u003eThe latitude and longitude values for these points must fall within specific ranges (-90 to 90 for latitude, -180 to 180 for longitude), with special considerations for cases where these values are equal or cross the 180-degree longitude line.\u003c/p\u003e\n"],["\u003cp\u003eBoth \u003ccode\u003elow\u003c/code\u003e and \u003ccode\u003ehigh\u003c/code\u003e points are mandatory and must define a valid, non-empty area to avoid errors.\u003c/p\u003e\n"],["\u003cp\u003eA Viewport can represent a single point, a region crossing the 180-degree longitude line, or even the entire globe depending on its \u003ccode\u003elow\u003c/code\u003e and \u003ccode\u003ehigh\u003c/code\u003e values.\u003c/p\u003e\n"]]],[],null,["# Package google.geo.type\n\nIndex\n-----\n\n- [Viewport](/maps/documentation/places/web-service/reference/rpc/google.geo.type#google.geo.type.Viewport) (message)\n\nViewport\n--------\n\nA latitude-longitude viewport, represented as two diagonally opposite `low` and `high` points. A viewport is considered a closed region, i.e. it includes its boundary. The latitude bounds must range between -90 to 90 degrees inclusive, and the longitude bounds must range between -180 to 180 degrees inclusive. Various cases include:\n\n- If `low` = `high`, the viewport consists of that single point.\n\n- If `low.longitude` \\\u003e `high.longitude`, the longitude range is inverted (the viewport crosses the 180 degree longitude line).\n\n- If `low.longitude` = -180 degrees and `high.longitude` = 180 degrees, the viewport includes all longitudes.\n\n- If `low.longitude` = 180 degrees and `high.longitude` = -180 degrees, the longitude range is empty.\n\n- If `low.latitude` \\\u003e `high.latitude`, the latitude range is empty.\n\nBoth `low` and `high` must be populated, and the represented box cannot be empty (as specified by the definitions above). An empty viewport will result in an error.\n\nFor example, this viewport fully encloses New York City:\n\n{ \"low\": { \"latitude\": 40.477398, \"longitude\": -74.259087 }, \"high\": { \"latitude\": 40.91618, \"longitude\": -73.70018 } }\n\n| Fields ||\n|--------|-----------------------------------------------------------------------------------------------------------------------------------------|\n| `low` | [LatLng](/maps/documentation/places/web-service/reference/rpc/google.type#google.type.LatLng) Required. The low point of the viewport. |\n| `high` | [LatLng](/maps/documentation/places/web-service/reference/rpc/google.type#google.type.LatLng) Required. The high point of the viewport. |"]]