Coder Social home page Coder Social logo

esri / oriented-imagery Goto Github PK

View Code? Open in Web Editor NEW
39.0 14.0 19.0 13.28 MB

Find developer resources for Oriented Imagery, including a Web AppBuilder widget and oriented imagery catalog (OIC) schema.

License: Apache License 2.0

CSS 55.27% JavaScript 21.10% HTML 0.90% Python 8.88% TypeScript 13.86%
web-development javascript imagery web-appbuilder web-appbuilder-widgets image raster

oriented-imagery's Introduction

Oriented Imagery Classic - Development Resources

These resources relate to Oriented Imagery Classic, which is a community-supported, add-in solution for managing and visualizing imagery as a part of your GIS. The oriented imagery capability is being integrated into the ArcGIS system; read this blog to learn more.

This repo contains developer resources for Oriented Imagery Classic, including 2D and 3D Web AppBuilder widgets, the Experience Builder widget, a description of the Oriented Imagery Classic API, and a schema for oriented imagery catalogs (OICs). Learn more about Oriented Imagery Classic on the Imagery Workflows site.

Use the Oriented Imagery Classic widgets for Web AppBuilder for ArcGIS and Experience Builder to build web apps to explore oriented imagery (imagery not pointing straight down at the ground) from aerial, drone, or terrestrial sensors. App users select an oriented imagery catalog, click a location of interest on the map, then explore any available oblique, street-view, or inspection images that depict the area of interest using the inset viewer. As you pan and zoom in the oriented image, see the camera’s field of view dynamically updated on the map. Check out examples of a 2D app and a 3D app built with the widgets.

Also in this repo, find a description of the Oriented Imagery Classic API, which can be used to build custom oriented imagery applications.

This repo also contains a description of the oriented imagery catalog (OIC) schema for use in developing your own applications. OIC is the data structure used to manage oriented imagery in ArcGIS. The OIC is defined as a JSON that references a point-based feature service that defines the camera location, orientation, and image metadata.

To view OICs in ArcGIS Pro, download the Oriented Imagery Classic add-in for ArcGIS Pro. To create and manage your own OICs, download the Oriented Imagery Classic Management Tools from ArcGIS Online.

App

What's new in Oriented Imagery Classic developer resources

Version 2.11 (release June 2022)

  • What’s new in Oriented Imagery widget for Experience Builder:

    • Fixed the issue with Oriented Imagery graphics not displayed in the correct order.
    • Updated the max canvas area on HTML canvas to work with iOS devices.
    • Added support for the query module in JS API 4.24 (QueryTask deprecated).
    • Support for GeoJSON added to the OI widget.
    • Added support for DefaultImagery and DefaultSearchLocation parameters.
    • Updated the widget code and removed the hard coded MaxDistance value.
  • What’s new in Oriented Imagery API:

    • Updated the max canvas area on HTML canvas to work with iOS devices.
    • Added support for GeoJSON in the OIC JSON.
    • Updated OI API to accomodate the deprecation of tasks/GeometryService in JS API 4.24.
    • Fixed the issue with copyright message appearing over the video slider in video OICs.
    • Current coverage is updated with change in video slider (viewer).
    • Fixed the issue for current coverage not updating in video OICs.
    • Updated the max canvas area on HTML canvas to work with iOS devices.
    • Folder structure for t9n (translation) strings updated.
    • Added support for the query module in JS API 4.24 (QueryTask deprecated).
    • Oriented Imagery catalogs now supports multiple authentication types for Enterprise portals.
    • API now suports depth image for all image types.
    • Updated the accuracy of editable features in the OIC viewer.
    • Editing workflow (editable features) now works in the Add-in.
    • The navigation tool refreshes upon selecting a space with no image.
    • Viewer.html file deprecated from the API folder.

Version 2.10 (release March 2022)

  • What’s new in Oriented Imagery Webapp:

    • Added support for DefaultImage and DefaultSearchLocation parameter in the OIC.
    • Upgraded the Oriented Imagery graphics to display the correct order on the map.
    • Fixed the issue with the distance tool in the overlay tab for editable feature layer.
    • Fixed the measurement tool.
    • Updated the Image Gallery scroll bar.
    • Fixed the App widget used to view selected features in image.
    • Updated the distance tool in the overlay tab.
  • What’s new in Oriented Imagery API:

    • Added support for 360 degree images.
    • Enhanced the accuracy of the current coverage (image footprint).
    • CamOri attribute extended to support local tangent plane (ENU) cordinate system.
    • Updated navigation tool.
    • Added support for RGB based MRF imagery.
    • Added support to display thumbnails for feature attachments.
    • Updated superimpose view in the standard viewer.
    • Added support for mrf DEM.
    • Updated Autoswitch mode in the standard viewer.
    • Enhanced ground to image accuracy.
    • Added sharpness slider in the OI viewer.
    • Added Coverage Percent parameter to OIC json.
    • Updated the TimeUnit filter and the TimeSelector tool.
    • Integrated Mapillary API v4.0 with Oriented Imagery API.
    • Enhanced the accuracy of overlay vectors.
    • Updated the API to work in ArcGIS Enterprise.
    • Added support for ImageSuffix, DepthImageSuffix, DEMSuffix in the API.
    • Updated the logic for showing camera locations (overlay) in the viewer.
    • Added support to create OICs with XLS frametables.
    • Updated best image selected in 3D environment.
    • Removed corsEnabledServer from OI API as it is deprecated in 4.9 JS API version.
    • Add a button to enable/disable image depth slider in superimpose view.
    • Added support to get presigned URL for images on secured bucket.
    • Added a new mode of navigation from one image to another based on SortOrder attribute.
    • Other bug fixes.

Version 2.9 (release December 2021)

  • What’s new in Oriented Imagery Webapp:

    • Overlaid line features issue has been fixed.
    • Face lines issue in superimpose view for cube images has been fixed.
    • All QuickCapture issues for item URL in OIC have been fixed.
  • What’s new in Oriented Imagery API:

    • TIF images are read in image space using RasterX.
    • Appropriate error messages based on HTTP status code are displayed.
    • Right Z values are computed if world elevation is provided as the DEM source.
    • New enhancements related video have been added.
    • Fixed the issue where images with large sizes were not being displayed in the viewer.

Version 2.7 (release July 2021)

  • What’s new in Oriented Imagery API:

    • Use of item popup in image attribute viewer
    • Tiff / COG file support.
    • Use of feature service item URL in OIC.
    • Support to access OICs from IWA enabled portals.
    • 360 degree video bug fix.
    • Other bug fixes.
  • What’s new in Oriented Imagery 3D widget for Web AppBuilder For ArcGIS:

    • Updated Oriented Imagery API to v2.7
    • Several general fixes and performance and stability improvements.
  • What’s new in Oriented Imagery widget for Experience Builder:

    • Updated Oriented Imagery API to v2.7
    • Bug fixes

Version 2.6 (release April 2021)

  • What’s new in Oriented Imagery API:
    • Added Time selector to filter images based on days, weeks, months, and years.
    • Added support for 360 video
    • Added superimpose view to superimpose imagery into maps on top of 3D Data layers and vector layers
    • Added image attributes tool to display attributes for the current image
    • Added support to adjust the size of navigation tool
    • Updated best image computation based on imagery type
    • Updated UI/UX of the viewer
    • Several general fixes and performance and stability improvements.
  • What’s new in Oriented Imagery 3D widget for Web AppBuilder For ArcGIS:
    • Updated UI/UX of the widget
    • Updated Oriented Imagery API to v2.6
    • Several general fixes and performance and stability improvements.

Version 2.4 (release July 2020)

  • Web AppBuilder widgets using the ArcGIS API for JavaScript 4.x have been released. The 3.x versions are moved to mature support.
  • The Oriented Imagery API now supports:
    • Two different navigation tools: basic and advance.
    • You can now set the distance of features during editing for increased accuracy.
    • Point features now support labeling mode, where you can draw rectangles around objects on the image for point feature layers.
  • The sample web apps and 3D widget have the following enhancements:
    • Users can now add OICs from their ArcGIS Enterprise Portal account.
    • OAuth support for logging in.

Version 2.3 (release May 2020)

  • Web AppBuilder widgets using the ArcGIS API for JavaScript 4.x have been released. The 3.x versions are moved to mature support.
  • The Oriented Imagery API now supports attaching bubble and panoramic imagery to a feature service.
  • The sample web apps have two enhancements:
    • App users can now add OICs from My Organization's Groups in ArcGIS Online.
    • The Image Exposure points layer is grayed out if no exposure points are found.

Version 2.2 (release March 2020)

  • When digitizing in the web app, the user will now be prompted to add ImgUrn and ImgGeom fields to the feature service if they're not already there.
  • The Oriented Imagery API now includes the following:
    • Support for using a feature service with attachments as your data source.
    • Option to digitize features with measurement ON.
    • New navigation tool.
    • If the OIC includes an acquisition date, the date is displayed in the viewer.
    • Bug fixes for auto switch mode and for when near distance = 0.

Version 2.1 (release January 2020)

  • Custom Oriented Imagery Types are now available for download.
  • Fieldnames are now case insensitive in the Oriented Imagery API.
  • In the API, measurement tools automatically turn on and off based on accuracy and depth info.

Working with the widgets

Widget features

  • Build custom Oriented Imagery apps with no programming required
  • Support for standard frame, panoramic, or omnidirectional cameras (among others)
  • A built-in viewer for non-nadir imagery, or the option to integrate a custom imagery viewer
  • Spatial navigation tools designed to work with non-nadir imagery
  • Querying based on current view and filters (including time)
  • Image enhancement options
  • Linear and height measurement tools – where suitable ancillary data available
  • Synchronized display of view extent
  • Option to display extents and images similar to your current selection
  • API to help 3rd party developers

Instructions for using the Web AppBuilder 3D widget

  1. Download and unzip the Oriented Imagery repo ZIP file
  2. Download and install Web AppBuilder for ArcGIS (Developer Edition)
  3. Follow the instructions for custom widget deployment

Instructions for using the Experience Builder widget

  1. Download and unzip the Oriented Imagery repo ZIP file
  2. Download and install ArcGIS Experience Builder (Developer Edition)

Requirements

  • ArcGIS Online or ArcGIS Enterprise portal account
  • Web AppBuilder for ArcGIS 2.15+ Developer Edition
  • ArcGIS Experience Builder 1.3+ Developer Edition

Resources

Issues

Find a bug or want to request a new feature? Please let us know by submitting an issue.

Contributing

Esri welcomes contributions from anyone and everyone. Please see our guidelines for contributing.

Licensing

Copyright 2019 Esri

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

A copy of the license is available in the repository's License file.

oriented-imagery's People

Contributors

abhiataero avatar ath96 avatar ewindahl avatar randallrebello avatar vedantbajaj96 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

oriented-imagery's Issues

Viewer does not resize in accordance with the outer floating window

In Widget.js, there is this code snippet:

domStyle.set("oiviewer", "width", "100%");
domStyle.set("oiviewer", "height", "100%");

which supposedly refers to the this DOM node in Widget.html:

<div data-dojo-attach-point="oiviewer" style="width: 500px;height: 400px;"></div>

However, we use dom.byId() in the inner function, so this is giving an exception. If we add the id to the tag, then the problem will be resolved.

<div id="oiviewer" data-dojo-attach-point="oiviewer" style="width: 500px;height: 400px;"></div>

error when re-publishing catalog

I was following the ESRI tutorial found in "Tutorial - Create an Oriented Imagery Catalog .txt". At the time I did not have privileges to upload vector tiles to our AGOL organizations account and it failed to upload the vector tiles. Now that I do have those privileges, Ive tried to re-upload using "Publish All - overwrite". But am getting an error.

Publish Oriented Imagery Catalog
=====================
Parameters

Oriented Imagery Catalog     esriredlands_test
Tags     OrientedImagery
Description     test oriented imagery
Portal folder name:     
Publish options :     Publish all - overwrite
Add images as attachments     false
=====================
Messages

Start Time: Monday, August 16, 2021 7:20:59 PM
Update Available. Please read C:\Image_Mgmt_Workflows\OrientedImagery\Scripts\CheckForUpdate.json
Publishing Exposure Points.
'NoneType' object has no attribute 'id'
Failed to execute (PublishOrientedImageCatalog).
Failed at Monday, August 16, 2021 7:21:13 PM (Elapsed Time: 13.80 seconds)

Arcpro version: 2.8
Python version: 3.7.10

Camera location overlays cannot be shown in 'T'-type

I am testing a set of 'T' (terrestrial frame camera) images with depth maps on v2.4. The depth maps are in MRF format with LERC compression. The camera location overlays cannot be shown.

I can give you the data set in private messages.

[v2.4] [3D app only] Frustum of 'Current coverage' shakes

I am using the 3D app. When moving the Bubble Panorama view, the red frustum of 'current coverage' often moves in an opposite direction for half a second before moving to the right position. It does not seem to happen in v2.3.

Green diamond indicator becomes invisible underneath 3D objects

Well this issue is not directly a bug on Oriented Imagery, but it will make the feature unusable. I know it is related to the JavaScript API.

If you have some 3D models on the scene - whether it is of type 3DObject I3S, Mesh I3S or BIM - and you Alt-Click on the map, the green diamond indicator is completely invisible. This is not related to opacity. You can reproduce this having a 3D model of opacity 0.1.

The same happens if you turn on the Current coverage and Additional coverage frustums. The green diamond is masked.

Distance measurement tool always shows `NaNm ± NaN`

I am testing a set of 'T' (terrestrial frame camera) images with depth maps on v2.4. The depth maps are in MRF format with LERC compression. The distance measurement tool always shows
NaNm ± NaN.

Plus, Alt+Click does not seem to work. Red frustum disappears after zooming in by one level.

I can give you the data set in private messages.

Credentials not used

When credentials are presented in the OIC data structure they do not seem to be used. Username and password prompts are still appearing.

Include support for ArcGIS Pro 2.8.2

while released only yesterday, it appears the OIC addin does not work properly with ArcGIS Pro 2.8.2. Please include support for this latest release.

Equirectangular panorama never have z-values in imageToGroundPanorama

Despite "exposure points" are given in 3D (i.e. possessing z-values), the function imageToGroundPanorama in viewer.js do not calculate them.
Even given the z-axis of the exposure point, HFOV, heading, pitch, roll, depth from the depth map, the distance above ground is always NaN, because the resultant point is hard-wired into 2D.
You can definitely calculate the z if you have the values above. First you find the tilt of the current heading using the original tilt and heading, then you add the angle between the origin and the point. Since you have the new angle and the depth, you now have depth*Math.atan2(newAngle). More on this later.

[OIC Toolbox] OIC forced to be 2D / GPSAltitude EXIF field not read

When one create a catalogue using the ArcGIS Pro OIC Toolbox, even if the active map is a 3D scene, the points are hard-coded to be 2D. Even if the photo has a GPSAltitude EXIF field, the plugin does not read the value.

One has to drag the exposure points from 2D to 3D, manually enables their z-values, and change the path to the new exposure points.
Indeed, the viewer is able to read the z-values of these photos after the onerous procedure, but they are currently useless.

z-value information is only available when accuracy is Undef?

I don't understand the rationale behind this code snippet:

if ("UnDef" === e && (e = ["UnDef", "UnDef"]), t[0].z) var i = "<br>Z: " + t[0].z.toFixed(2);
else i = "";

Why is z-value information only available when accuracy is Undef?
(viewer.js, function measurementClient, under case "Point":)

error in https://oi.geocloud.com/api/v1.1/js/viewer.js

I registered the Web AppBuilder widget with my ArcGIS Portal 10.7.1 (customer-driven). Published an OIC successfully and can configure it for use in the widget. However, when identifying a location, the widget fails to return an image. Some digging shows what appears to be an error in 'createThumbnailUrl' in https://oi.geocloud.com/api/v1.1/js/viewer.js (line 1243 in browser formatted version).

else if ("A|" === t.Image.substr(0, 2)) {
                var r = t.Image.split("|")

t at this point does not have an attribute Image. It does however have an attribute image that has a valid URL to the returned image.

after setting:

t.Image = t.image

in the browser console for the images returned from the search, the app does display the images properly.

z-value information only available when accuracy is Undef?

I don't understand the rationale behind this code snippet:

if ("UnDef" === e && (e = ["UnDef", "UnDef"]), t[0].z) var i = "<br>Z: " + t[0].z.toFixed(2);
else i = "";

Why is z-value information only available when accuracy is Undef?
(viewer.js, function measurementClient, under case "Point":)

[JS API 4.16 Support]

In JavaScript API 4.16, the constructor of FeatureForm becomes asynchronous.
As FeatureForm has to load data from ArcGIS Online, its creation is slower than the creation of Update & Delete buttons.

I changed

                var featureForm = new FeatureForm({
                    container: editingNode,
                    layer: layer,
                    feature: graphic,
                    fieldConfig: fieldInfos
                });
                //editable field change
                domConstruct.place("<button class='btn btn-clear'>" + this.nls.update + "</button><button class='btn btn-clear' style='margin-left:10px;'>" + this.nls.delete + "</button>", featureForm.container);
                console.log(featureForm.container);
                featureForm.container.childNodes[1].addEventListener("click", lang.hitch(this, function () {
                    if (featureForm)
                        featureForm.submit();
                }));
                featureForm.container.childNodes[2].addEventListener("click", lang.hitch(this, function () {
                    layer.applyEdits({ deleteFeatures: [{ objectId: objectId }] }).then(lang.hitch(this, function (result) {
                        if (result.deleteFeatureResults.length) {
                            this.orientedViewer.refreshVectorLayer(layer.title);
                            this.sceneView.popup.clear();
                            this.sceneView.popup.close();
                        }

                    }));
                }));

to

                var featureForm = new FeatureForm({
                    container: editingNode,
                    layer: layer,
                    feature: graphic,
                    fieldConfig: fieldInfos
                });
                featureForm._resourcesFetch.then(() => {
                    domConstruct.place("<button class='btn btn-clear'>" + this.nls.update + "</button><button class='btn btn-clear' style='margin-left:10px;'>" + this.nls.delete + "</button>", featureForm.container, "last");
                    console.log(featureForm.container);
                    featureForm.container.childNodes[1].addEventListener("click", lang.hitch(this, function () {
                        if (featureForm)
                            featureForm.submit();
                    }));
                    featureForm.container.childNodes[2].addEventListener("click", lang.hitch(this, function () {
                        layer.applyEdits({ deleteFeatures: [{ objectId: objectId }] }).then(lang.hitch(this, function (result) {
                            if (result.deleteFeatureResults.length) {
                                this.orientedViewer.refreshVectorLayer(layer.title);
                                this.sceneView.popup.clear();
                                this.sceneView.popup.close();
                            }

                        }));
                    }));
                });

Geospatial Video OIC

Hello,

I am having trouble when trying to add geospatial video to my OIC. I copied the GeospatialVideo.oictype and GeospatialVideo.py files to C:\Image_Mgmt_Workflows\OrientedImagery\Types and I am able to see GeospatialVideo as an available Input Type in the Add Images to Oriented Imagery Catalog tool. I have a .mp4 video file that I captured with a drone and was able to successfully combine with the corresponding geospatial video log using the Video Multiplexer tool. I am able to view the video in the FMV Player and the geospatial components are displayed on my map so my video seems to have been properly multiplexed. I have also uploaded the multiplexed video to my agency's public site so the video is web-accessible.

When I run the Add Images to Oriented Imagery Catalog tool:
-Input OIC is set to an empty OIC created by the Create Oriented Imagery Catalog tool
-Input Type is set to GeospatialVideo
-Metadata File is set to the path of the geospatial video log csv file (the same one I used for multiplexing) on my local drive
-Video File is set to the url for my multiplexed .mp4 video file on my agency's site
-Imagery Type is set to GeospatialVideo_Defaults
and the rest of the parameters are kept at their default values

This is where I'm stuck. When running the tool, I receive the following message and I don't know how to proceed
image

The tool completes but it seems to have not done anything. Any help is greatly appreciated!

On another note, I was wondering if there were plans to release any support documentation for Geospatial Video similar to the available user docs for Drone2Map, Pictometry, and Sanborn.

Thanks!

Create Coverage Features reports missing properties one at a time

When using the Create Coverage Features tool on an OIC that does not have all properties set (such as AvgHtAG or NearDist/FarDist), it completes with a warning that 1 property was missing. This requires repeated runs to understand what properties are missing.

Enhancement request: report all missing properties and/or allow setting missing properties in this tool.

NaN in MRF not handled in 'B' type

Please don't set NaN values to FarDist. This just doesn't make any sense.
Original imageToGroundPanorama:

} r || 0 === r || (r = t[0] < 0 ? this.selectedFeatureAttributes.avghtag / Math.tan(-t[0] * Math.PI / 180) : this.selectedFeatureAttributes.fardist) > this.selectedFeatureAttributes.fardist && (r = this.selectedFeatureAttributes.fardist);

Distance above ground

I don't think this feature is fixed yet.
Could you double check, please? Thanks.
You can use my 'T' dataset.

Blue and Alpha are not used but the depth map has to be RGBA(?) Makes everything slower

May I ask why the depth maps are required to be RGBA?

This is from loadDepthImage from viewer.js :

for (var l = 0; l < Object.keys(this.depthInfo.pixels).length; l++)
for (var c = n.getImageData(a * l, 0, a, h.height), m = 0; m < c.data.length; m += 4) e = c.data[m] >> 6 << 1, s = ((63 & c.data[m]) << 8 | c.data[m + 1]) << e, this.depthInfo.pixels[l].push(s / 1e3);
this.depthImage = !0, this.depthInfo.isLoading = !1, I.set(this.depthBtn, "display", "inline"), this.domNode.getElementsByClassName("oi-imageViewer")[0].removeChild(h)

If I am not mistaken, c.data[m] is the red channel and c.data[m + 1] is the green channel. That means the blue and alpha channel are unused. It doubles the data and slows down the load process of the image (and the generation of depth images). And how should one express decimal places of lengths? Thanks.

JavaScript error related to MRF reader

I am testing a set of 'T' (terrestrial frame camera) images with depth maps on v2.4. The depth maps are in MRF format with LERC compression.

How to reproduce:
(Chrome v83)

  1. Make sure the OIC window is small enough (e.g. 300x300)
  2. Click to open an image (no need to click the 'Depth map' button)
  3. Resize the browser window (e.g. 600x600)
  4. Maximize the browser window

Upon maximizing the browser, the height of the OIC floating window becomes this:

Here is the browser log:

Uncaught TypeError: Cannot read property '0' of undefined
    at Object.httpRangeRequest (mrfDataset.js:1)
    at Object.readEntireImage (mrfDataset.js:1)
    at Object.readEntireImage (dojo.js:42)
    at Object.getNewDepthMRF (viewer.js:1)
    at Object.getNewDepthImage (viewer.js:1)
    at Object.resize (viewer.js:1)
    at main.js:1

Then the app freezes, we are not able to interact with the map again.

Thanks.

QuickCapture OIC

Hiya,

I am struggling to view images which have been taken through the QuickCapture app which uses data with the oriented imagery capabilities enabled. This is what I have attempted:

I have installed the oriented imagery catalogue plugin and tools into ArcGIS Pro. After adding in the OIC generated from the QuickCapture App and selecting the OI point the imagery viewer just perpetually loads.
Using the ESRI Oriented Imagery Viewer (https://oi1.img.arcgis.com/app/index.html?oic=7afb7e86a63d4bb28d0c1f925c1dc7df), after adding the data in and selecting the OI point the coverage areas are loaded, however the imagery viewer has the message 'failed to load image'.
I have added the custom widget into WebApp for developers and added the OIC to the app and map. When selecting the OI point none of the coverage areas are shown and the imagery viewer just says '[object Event]'. However it does seem to select the points which should be within the current coverage, and does change the selected of points.

Whilst they all have differences, the main issue is not being able to view the images. As the data is being generated through QuickCapture (OIC was enabled at the start before any images were taken) the images are stored in the data as attachments, as much of the guidance around using oriented imagery doesn't mention attachments could this be the issue? However reading the help and guidance pertaining to the QuickCapture app and oriented imagery, it seems it should work fine.

I am using version 2.6.0 (ArcGIS Pro) and version 10.8.1 (Enterprise).

Any help is greatly appreciated, Thanks!
Sam

OI gptool call from python script

Issues while calling gptool from python script

GDAL path issue on 2.8.1 pro
-works on pro 2.8.0 but has the issue of GDAL in pro 2.8.1
- Repo install pro 2.8.1 and try the running script

Local Image path (name getting Null)
-on Imagelist image type, while passing the local path name field in the exposure point FC gets null
- Repo run tool with local image path having (c:\imagepath.jpg)

Multithread check with a number of images
- remove multithread subprocess for images lesser than 10 or 20

Regression for the all OI Types

Widgets : Restructure Widgets Folder.

Restructure the widgets folder.
Create folders and Readme.md files for each.

Create Folders

  1. Depreciated\WAB2D.
  2. WAB3D.
  3. ExperienceBuilder

Delete Folders
OrientedImagery
OrientedImagery 3D

Update Readme.md files for each.

z-value information only available when accuracy is Undef(?)

I don't understand the rationale behind this code snippet:

if ("UnDef" === e && (e = ["UnDef", "UnDef"]), t[0].z) var i = "<br>Z: " + t[0].z.toFixed(2);
else i = "";

Why is z-value information only available when accuracy is Undef?
(viewer.js, function measurementClient, under case "Point":)

Zooming

I am testing a set of 'B'('bubble')-type panoramic photos. When any of the panorama is first loaded, the photo is already slightly zoomed in. Then when you click the Zoom In button (or upward mouse scroll), it actually zooms out. After that, you won't be able to zoom in and out again.

The bug might be caused by fov from libpannellum.py, but only you know the logic behind. To me, zooming in is simply enlargement of the image, not modifying pannellum's fov.

Zooming issues

There are two zooming issues.
The first one is a serious one. Zooming in your libpannellum.js is directly tied to the maximum FOV, which is in turn tied to FarDistance. In Pannellum (v2.5), zooming is simply magnification, it neither depends on or modifies the FOV. Indeed, the buttons do nothing (except the behaviour in #18) when the OIC window is large enough, say above 600x600.
The screenshot sums the first issue up :

Magnification is essential since without it measuring will not be accurate. At the end of the road, the depth values are packed together. Deviation by a single pixel may change a lot. Also, zooming is among the most common features.

The second one is #18. When the OIC window is large enough, say above 600x600, pressing "Zoom In" actually zooms out once. Then the buttons simply do nothing.

Thanks for all the hard work.

Pannellum used failed to load any depth map

From the Chrome console, I can see that the depth map is loaded as an 1D array: [118 118 118 255 112 112 112 255 etc...]
However, when you turn on the "Depth Map" tool, Pannellum becomes all black:

Viewer version: 2.3

Geospatial Video Fixes

Bug fixes and Enhancements

  1. Default max distance to 1000.
  2. The formula to calculate near and far distance has changed. (using cos instead of tan function)
  3. The index out of range error has been fixed.
  4. The program will now first look for sensor altitude (assuming it to be orthometric heights) first and if that is not found will look for SensorEllipsoidHeight.
  5. Will refresh token when requesting for elevation data if too many calls are made and token expires.
  6. These fields are made as optional : SensorRelativeAzimuth, SensorRelativeElevation, SensorRelativeRoll.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.