在Julia中加载地图时出现以下错误:
ERROR: MethodError: no method matching ccolor(::Type{ColorTypes.Gray{FixedPointNumbers.Normed{UInt8,8}}}, ::Type{Nothing})
Closest candidates are:
ccolor(::Type{Cdest<:ColorTypes.Colorant}, ::Type{Csrc<:ColorTypes.Colorant}) where {Cdest<:Colorant, Csrc<:Colorant} at /Users/logankilpatrick/.julia/packages/ColorTypes/BsAWO/src/traits.jl:259
ccolor(::Type{Cdest<:(ColorTypes.Color{T,1} where T)}, ::Type{T<:Number}) where {Cdest<:(Color{T,1} where T), T<:Number} at /Users/logankilpatrick/.julia/packages/ColorTypes/BsAWO/src/traits.jl:260
Stacktrace:
[1] convert(::Type{ColorTypes.Gray{FixedPointNumbers.Normed{UInt8,8}}}, ::Nothing) at /Users/logankilpatrick/.julia/packages/ColorTypes/BsAWO/src/conversions.jl:7
[2] ColorTypes.Gray{FixedPointNumbers.Normed{UInt8,8}}(::Nothing) at /Users/logankilpatrick/.julia/packages/ColorTypes/BsAWO/src/types.jl:446
[3] _broadcast_getindex_evalf at ./broadcast.jl:574 [inlined]
[4] _broadcast_getindex at ./broadcast.jl:547 [inlined]
[5] getindex at ./broadcast.jl:507 [inlined]
[6] copy at ./broadcast.jl:734 [inlined]
[7] materialize(::Base.Broadcast.Broadcasted{Base.Broadcast.DefaultArrayStyle{0},Nothing,Type{ColorTypes.Gray{FixedPointNumbers.Normed{UInt8,8}}},Tuple{Base.RefValue{Nothing}}}) at ./broadcast.jl:724
该错误引用了我使用的称为loadgraymap的函数,其定义如下:loadgraymap(filename::String) = Gray{N0f8}.(FileIO.load(filename)) |> transpose
有趣的是,它在第一次调用时有效,但在第二次调用时无效。有关如何解决此问题的任何建议?我对Julia的v0.6没有任何问题。我还收到以下警告:WARNING: QuartzImageIO: indexed color images not implemented
,但我不确定是什么意思
在这里我调用该方法:
holderVar.zone_map = loadcolormap(map_file_name(sim_params, "Zone"))
holderVar.depth_map = loadgraymap(map_file_name(sim_params, "Depth"))
#temp_slope_map = loadgraymap(map_file_name(sim_params, "Slope"))
#holderVar.slope_map = (someFakeNum/someFakeNum) .* (someFakeNum .- temp_slope_map)
#temp_elev_map = loadgraymap(map_file_name(sim_params, "Elevation"))
#holderVar.elev_map = someFakeNum * someFakeNum .* temp_elev_map
请注意,它的前两个调用工作正常!我只是将其注释掉,以便可以继续解决遇到的各种错误。我还更改了上面的变量名称,使其看起来更通用!