Find answers to common questions about voxel layers.
- The voxel volume must be a regularly gridded volume with a specific dimensional order—x,y,z,t or t,z,y,x.
- An irregularly gridded voxel can be consumed as point features and interpolated with the Empirical Bayesian Kriging 3D and GA Layer 3D To NetCDF tools.
Unsupported NetCDF files do not display variable information on the Add Multidimensional Voxel Layer dialog box and cannot be added to a local scene. A warning button appears on the dialog box. Click it to see a report on any issues with the NetCDF file. Ensure that the NetCDF file is volumetric and contains the necessary x,y,z dimensions with recognized coordinate variable naming. See supported voxel formats for more information. The Python NetCDF4 library or ArcPy NetCDFFileProperties class can validate dimension and variable information for a NetCDF file.
Coordinate variables in a NetCDF file determine which variables represent the x,y,z information. The coordinate system of the data created from a NetCDF variable is determined by the units of the coordinate variables and whether the grid_mapping attribute exists.
If the units of the coordinate variables specified as the x- and y-dimensions are the units of longitude and latitude, respectively, the data is in a geographic coordinate system (GCS) and is automatically set as WGS 1984.
If the standard_name of the coordinate variables specified as the x- and y-dimensions are projection_x_coordinate and projection_y_coordinate, respectively, and the variable has a grid_mapping attribute, the data is in a projected coordinate system (PCS). The projection name, type, and other parameters are defined by a grid_mapping variable.
NetCDF files created from geoprocessing tools in ArcGIS AllSource contain a global attribute esri_pe_string. The voxel layer reads the well-known text (WKT) from this global attribute to set the coordinate system.
Place a projection file (.prj) with the same name as the NetCDF file in the same directory to override the coordinate system of the NetCDF file. See Save a coordinate system as a projection file to learn how to create a projection file.
Both the horizontal and vertical coordinate systems of the voxel layer must match the scene's coordinate system. Open the scene properties to confirm both the horizontal and vertical coordinate systems are set properly.
Yes. Ensure that the voxel layers do not overlap in the same area, as only one voxel layer displays at a time. Also ensure that your graphics card can handle displaying multiple voxel layers. It is recommended that you have at least 4 GB of dedicated graphics memory. See ArcGIS AllSource system requirements for more information.
Voxel layers support NetCDF files with x,y,t or x,y,z,t dimensions. The time variable must have a units attribute and the time values must be sorted in ascending order. The following formats are supported: YYYY:MM:DD, hh:mm:ss, YYYY:MM:DD, and YYYY:MM:DD hh:mm:ss hh:mm, where the last hh:mm is a time zone. Use the Python NetCDF4 library if the time values need to be sorted in ascending order.
The .vxc1 file is created anytime a user adds a voxel layer to a local scene with the Optimize for performance option enabled. This file can be used by any ArcGIS AllSource application that is displaying the NetCDF file as a voxel layer. The .vxc1 file increases in size as a user displays more variables and creates more isosurfaces and sections. Disable this functionality by unchecking Optimize for performance on the Display page of the voxel layer properties. The .vxc1 file can be manually deleted in the file system.
Only one volume of the multidimensional data can be visualized. The volume with the highest number of variables is set. If the number of variables is identical, the volume is prioritized by dimension. For example, the x,y,z,t variables are chosen over x,y,z and x,y,z variables are chosen over x,y,t variables. To visualize multidimensional volumetric data as a voxel layer, it is recommended that you have only one volume defined.
Starting at ArcGIS AllSource 3.0, the experience of working with discrete voxel variables has been simplified. ArcGIS AllSource casts the original data values, and depending on how the data is stored in the NetCDF file, the casting of discrete values may differ. For example, signed integers or floating point formats will be represented as a signed byte where unsigned integers will be represented as an unsigned byte.
The values that have been cast are shown in symbology and pop-ups. If your data is outside of the range of a signed or unsigned byte, or if the casting of values is causing conflicts, you can remap the values using Python script.
A voxel scene layer (SLPK or service) created prior to ArcGIS AllSource 3.0 will not draw discrete variables. You must run the Create Voxel Scene Layer Content tool to re-create the SLPK or republish the voxel scene layer service.
If you use the Nearest Neighbor 3D geoprocessing tool, the output NetCDF contains labels that a voxel layer honors. Alternatively, use Python to create the NetCDF file or alter the NetCDF file to include esri_unique_values and esri_unique_labels attributes for the visualized variable.
An example to specify labels for two unique values for a variable in a NetCDF file.
:esri_unique_labels = "Above", "Below";
:esri_unique_values = 1, 0; // int
You can use the regularize Z Python script or toolbox tool to adjust the spacing in the voxel dataset.
Yes, you can use the Make Multidimensional Voxel Layer tool to create a voxel layer. To share to ArcGIS Enterprise or ArcGIS Online, use the Create Voxel Scene Layer Content tool and Share Package tool.