TimeWithinDay (arcpy.sa)
Resumen
Defines a time period within one day to perform solar caclulations. A Julian Day, start time, and end time are specified.
Debate
This object can be used in the following tools: Area Solar Radiation, Points Solar Radiation, and Solar Radiation Graphics.
When the startTime and the endTime are the same, instantaneous insolation will be calculated. When the startTime is before sunrise and the endTime is after sunset, insolation will be calculated for the whole day.
For within-day time configurations, the maximum range of time is one day (24 hours). Calculations will not be performed across days (for instance, from 12:00 p.m. to 12:00 p.m. the next day). The startTime must be less than the endTime.
For within-day time configurations, the start and end times are displayed as solar time (units: decimal hours). When converting local standard time to solar time, the program accounts for equation of time.
Sintaxis
Parámetro | Explicación | Tipo de datos |
day |
The day is a Julian day value from 1 to 365. (El valor predeterminado es 183 of the Julian calendar) | Long |
startTime |
The startTime is the first hour to be used in the analysis. The hour is represented with a number from 0 to 24. (El valor predeterminado es 0) | Double |
endTime |
The endTime is the last hour to be used in the analysis. The hour is represented with a number from 0 to 24. (El valor predeterminado es 24) | Double |
Propiedades
Propiedad | Explicación | Tipo de datos |
day (Lectura y escritura) |
The day is a Julian day value from 1 to 365. | Long |
startTime (Lectura y escritura) |
The startTime is the first hour to be used in the analysis. The hour is represented with a number from 0 to 24. | Double |
endTime (Lectura y escritura) |
The endTime is the last hour to be used in the analysis. The hour is represented with a number from 0 to 24. | Double |
Ejemplo de código
Demonstrates how to create a TimeWithinDay class and use it in the AreaSolarRadiation tool within the Python window.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
myTimeWithinDay = TimeWithinDay(264, 11, 14)
outAreaSolar = AreaSolarRadiation("solar_dem", "", "", myTimeWithinDay)
outAreaSolar.save("C:/sapyexamples/output/areasolartwd")
Calculates the incoming solar radiation with the AreaSolarRadiation tool using the TimeWithinDay class.
# Name: TimeWithinDay_Ex_02.py
# Description: Execute AreaSolarRadiation using the TimeWithinDay object
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster = "solar_dem"
# Create TimeWithinDay Object
day = 100
startTime = 0
endTime = 24
myTimeWithinDay = TimeWithinDay(day, startTime, endTime)
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute AreaSolarRadiation
outAreaSolar = AreaSolarRadiation(inRaster, "", 200, myTimeWithinDay, 14, 0.5,
"NOINTERVAL", 1, "FROM_DEM", 32, 8, 8,
"UNIFORM_SKY", 0.3, 0.5)
# Save the output
outAreaSolar.save("C:/sapyexamples/output/areasolartwd2")