The ArcPy 'layer.extrusion' method does not successfully extrude data.
ArcGIS Pro
漏洞 ID 编号
BUG-000170010
已提交
August 15, 2024
上次修改时间
May 26, 2025
适用范围
ArcGIS Pro
找到的版本
3.3.1
操作系统
Windows OS
操作系统版本
11.0 64 bit
状态
As Designed
经开发团队审核,已确定此行为符合设计。 有关详细信息,请参阅“其他信息”部分。
附加信息
The issue is that the expression syntax does not match the expression language. For example, at some point the expression was written for VBScript, but the default language is Arcade. Here is a script that will iterate through layers and report the current expression language if an expression is present and a layer supports extrusion expressions.`#Use CIM properties to determine if there is Layer.extrusion expression# and if so, what language is being usedp = arcpy.mp.ArcGISProject('current')m = p.listMaps()[0]for l in m.listLayers(): l_cim = l.getDefinition('V3') if hasattr(l_cim, 'extrusion'): if (hasattr(l_cim.extrusion, 'extrusionExpressionInfo') and hasattr(l_cim.extrusion.extrusionExpressionInfo, 'expression') and len(l_cim.extrusion.extrusionExpressionInfo.expression) > 0): print(f"{l.name}: Language = Arcade") print(f" expression = {l_cim.extrusion.extrusionExpressionInfo.expression}") elif(hasattr(l_cim.extrusion, 'extrusionExpression') and len(l_cim.extrusion.extrusionExpression) > 0): print(f"{l.name}: Language = VBScript") print(f" expression = {l_cim.extrusion.extrusionExpression}") else: print(f"{l.name}: No extrusion expression, therefore no language") else: print(f"{l.name}: Does not support extrusion")'.