POST
|
Thanks for your reply. Can you explain what the statement means? Does it mean that the result is half as big as expected, or that the volumes for all pixels along one side are half as big, or that volumes for all pixels along the border are half as big, or that the result will be off for one pixel? The statement in the documentation, while pointing to one reason why I might have different results, still obscures how one would go about calculating surface volume using their technique, and thus from understanding how I should specify inputs to the tool.
... View more
08-22-2016
12:09 PM
|
0
|
1
|
646
|
POST
|
I created a toy raster with the following values: 30 30 30 30 30 0 0 30 30 0 0 30 30 30 30 30 and a projection of NAD_1983_Albers, with 30x30 m cells (to match my DEM motivating the issue). I then ran Surface Volume (3D) with the following settings: Reference Plane: BELOW Plane Height: 30 Z Factor: 0.01 **Note I was not allowed to change this value in ArcMap; it was interpreted by default from the projection. Based on my multiple open topics, here are results I could expect given those inputs: plane height is in meters, z factor is m/cm: volume = (30 m)*(30 m)*(30 m)*(4 cells) + (30 m)*(30 m)*(29.7 m)*(12 cells) = 428,760 m^3 plane height is in centimeters, z factor is m/cm: volume = (30 m)*(30 m)*(0.3 m)*(4 cells) = 1,080 m^3 plane height is in meters, z factor is in cm/m: volume = (30 m)*(30 m)*(30 m)*(4 cells) = 108,000 m^3 plane height is in centimeters, z factor is in cm/m: volume = (30 m)*(30 m)*(0.3 m)*(4 cells) = 1,080 m^3 The actual results are... 241,650 somethings^3. My conclusion: either I dont understand what this tool is doing (and my topics asking for more explanation are well-founded), my experiment was flawed, or there's something very wrong with the tool. If anyone can shed some light on the topic, I would be really appreciative.
... View more
08-22-2016
11:27 AM
|
0
|
3
|
646
|
POST
|
Thanks for your reply Dan. That suggestion in the last link was my own, and unfortunately it's just a guess. My hope in creating a separate topic was to put this thing to rest with a definitive answer from someone with extensive experience with the tool or direct knowledge of the programming. Perhaps, as you suggest, I should just go create a toy raster with known units and experiment, though it would be much more satisfying to get it directly from the horse's mouth (as they say).
... View more
08-18-2016
01:30 PM
|
0
|
5
|
646
|
POST
|
What are the correct units for input z_factor for Surface Volume (3D)? I am working with a DEM which has lateral (xy) units of meters and vertical (z) units of centimeters. I need to calculate the volume below a height (measured in centimeters). I have used the following syntax to do this: arcpy.SurfaceVolume_3d(r'C:\mydem.tif', r'C:\mycsv.csv', 'Below', height, z_factor=0.01) Should the z_factor be specified in units of centimeters-per-meter, or meters-per-centimeter? Note some related topics/questions: Correct base_z (height) for Surface Volume (3D) with z_factor != 1? How does z_factor affect Surface Volume (3D) units? https://community.esri.com/thread/91487
... View more
08-18-2016
01:22 PM
|
0
|
1
|
1050
|
POST
|
What are the correct units for input base_z (height) into Surface Volume (3D) when the z_factor is not default (1.0)? I am working with a DEM which has lateral (xy) units of meters and vertical (z) units of centimeters. I need to calculate the volume below a height (measured in centimeters). I have used the following syntax to do this: arcpy.SurfaceVolume_3d(r'C:\mydem.tif', r'C:\mycsv.csv', 'Below', height, z_factor=0.01) Should the base_z (height) be specified in units of meters, or units of centimeters? Note some related topics/questions: How does z_factor affect Surface Volume (3D) units? https://community.esri.com/thread/181692-correct-units-for-zfactor-in-surface-volume-3d Units for Surface Volume tool
... View more
08-18-2016
01:17 PM
|
0
|
1
|
1083
|
POST
|
What are the units of volume output by Surface Volume (3D) when a non-default (=1.0) z_factor has been specified? I am working with a DEM which has lateral (xy) units of meters and vertical (z) units of centimeters. I need to calculate the volume below a height (measured in centimeters). I have used the following syntax to do this: arcpy.SurfaceVolume_3d(r'C:\mydem.tif', r'C:\mycsv.csv', 'Below', height, z_factor=0.01) Assuming this is the correct specification, will the output units of volume be cubic-meters, or cubic-centimeters? The values I am getting lead me to believe the units are cubic-centimeters. Note some related topics/questions: Correct base_z (height) for Surface Volume (3D) with z_factor != 1? https://community.esri.com/thread/181692-correct-units-for-zfactor-in-surface-volume-3d Units for Surface Volume tool
... View more
08-18-2016
01:12 PM
|
0
|
7
|
1700
|
POST
|
Thanks for your prompt reply Darren. I understand when to change the z-factor, but my question is about what a change in the z-factor does to the output volume units. In my case, I'm working with a DEM that has units of m x m x cm (the standard format for NED DEMs), so I think I specify a z-factor of 0.01 m/cm (though now your answer confuses me about the appropriate value). Assuming that's all correct, my question is: Is the output volume measure in units of cubic meters, or cubic centimeters? I had assumed it would be cubic meters, but the values seem way too large to be correct, and dividing by 1e6 cm3/m3 seems to make them more reasonable.
... View more
08-16-2016
11:16 AM
|
0
|
1
|
1346
|
POST
|
Gerry, could you expand on this a bit. If you changed the z-factor, will the output units be in the z units rather than the xy units? The tool documentation is ambiguous, but led me to believe the volume would always be in the xy units (the only evidence is the statement "This is typically used to convert Z linear units to match XY linear units.").
... View more
08-16-2016
10:46 AM
|
0
|
3
|
1346
|
POST
|
Please post the top portion of your code where you parse out the input parameters. Sorry, which part are you talking about? The execute() method? # ~~ execute() ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #
def execute(self, P, messages):
"""
EXECUTE() calls ImpactScoreRasters.ImpactScoreRasters in Bungee's
executing directory.
"""
pK = self.paramOrder
import arcpy
# process parameters
analysis = arcpy.Describe(P[pK['analysis']].value).catalogPath
outPad = arcpy.Describe(P[pK['outPad']].value).catalogPath
outRoad = arcpy.Describe(P[pK['outRoad']].value).catalogPath
outPipe = arcpy.Describe(P[pK['outPipe']].value).catalogPath
usePadFootprint = P[pK['usePadFootprint']].value Or are you referring to the getParameterInfo portion? # ~~ __getParameterInfo__() ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #
def getParameterInfo(self):
"""Define parameter definitions"""
import arcpy
# input analysis object (pickled file)
analysis = arcpy.Parameter(
displayName = 'Analysis Object File',
name = 'analysis',
datatype = 'File',
parameterType = 'Required',
direction = 'Input'
)
# Output Pad Raster
outPad = arcpy.Parameter(
displayName = 'Output Pad Raster',
name = 'outPad',
datatype= 'Raster Dataset',
parameterType = 'Required',
direction = 'Output'
)
# Output Road Raster
outRoad = arcpy.Parameter(
displayName = 'Output Road Raster',
name = 'outRoad',
datatype= 'Raster Dataset',
parameterType = 'Required',
direction = 'Output'
)
# Output Pipe Raster
outPipe = arcpy.Parameter(
displayName = 'Output Pipeline Raster',
name = 'outPipe',
datatype= 'Raster Dataset',
parameterType = 'Required',
direction = 'Output'
)
# Use Pad Footprint Flag
usePadFootprint = arcpy.Parameter(
displayName = 'Use Pad Footprint?',
name = 'usePadFootprint',
datatype = 'Boolean',
parameterType = 'Optional',
direction = 'Input'
)
usePadFootprint.value = False
# finish
parameters = [
analysis,
outPad,
outRoad,
outPipe,
usePadFootprint
]
return parameters
... View more
01-10-2014
04:36 AM
|
0
|
0
|
310
|
POST
|
I am creating a script tool as part of a Python Toolbox (.pyt) that performs some fairly basic tasks. The tool takes a single input file and creates three output rasters (see image). The problem I am having is that somewhere in Hidden ArcMap World, ArcMap is automatically populating the three output raster paths with the same path when the user gives the single input. I have attempted to work around this in 2(+) ways. by having a check in updateMessages that raises an error if any of the ouputs match path/name by trying to automatically generate file names in updateParameters whenever the user has altered the input parameter (and the others dont yet have a "value" or have not been "altered") How can I either [1] prevent ArcMap from populating parameter names without changing their status to "Optional" or [2] force ArcMap (or arcpy) to use different names when automatically populating those parameters? [ATTACH=CONFIG]30378[/ATTACH]
... View more
01-09-2014
08:50 AM
|
0
|
2
|
870
|