s-ccs / ERPgnostics.jl

1 stars 1 forks source link

strokecolor crashes with WGLMakie #52

Open vladdez opened 1 week ago

vladdez commented 1 week ago

This code runs in CairoMakie and GLMakie, but crashes with WGLMakie MWE:

WGLMakie.activate!()
f = Figure()
interact_me = f[1, 1] = Makie.Axis(f)
h = lines!(interact_me, [1, 2, 3])
hs = scatter!(interact_me, [1, 2, 3], markersize = 20, strokewidth = 5, #strokecolor = [:black,:black,:black])
ERROR: MethodError: no method matching native_type(::WGLMakie.WebGL, ::Type{RGBA{Float32}})
The function `native_type` exists, but no method is defined for this combination of argument types.

Closest candidates are:
  native_type(::ShaderAbstractions.AbstractContext, ::Type{Float16})
   @ ShaderAbstractions ~/.julia/packages/ShaderAbstractions/20WwW/src/uniforms.jl:30
  native_type(::ShaderAbstractions.AbstractContext, ::Type{N0f8})
   @ ShaderAbstractions ~/.julia/packages/ShaderAbstractions/20WwW/src/uniforms.jl:34
  native_type(::ShaderAbstractions.AbstractContext, ::Type{N0f16})
   @ ShaderAbstractions ~/.julia/packages/ShaderAbstractions/20WwW/src/uniforms.jl:33
  ...

Stacktrace:
  [1] convert_uniform(context::WGLMakie.WebGL, x::Vector{RGBA{Float32}})
    @ ShaderAbstractions ~/.julia/packages/ShaderAbstractions/20WwW/src/uniforms.jl:87
  [2] (::ShaderAbstractions.var"#21#22"{WGLMakie.WebGL})(x::Vector{RGBA{Float32}})
    @ ShaderAbstractions ~/.julia/packages/ShaderAbstractions/20WwW/src/uniforms.jl:57
  [3] #map#13
    @ ~/.julia/packages/Observables/YdEbO/src/Observables.jl:570 [inlined]
  [4] map
    @ ~/.julia/packages/Observables/YdEbO/src/Observables.jl:568 [inlined]
  [5] convert_uniform(context::WGLMakie.WebGL, x::Observable{Vector{RGBA{Float32}}})
    @ ShaderAbstractions ~/.julia/packages/ShaderAbstractions/20WwW/src/uniforms.jl:95
  [6] (::ShaderAbstractions.var"#27#29"{WGLMakie.WebGL, Dict{Symbol, Any}, Dict{Symbol, Any}})(io::IOBuffer)
    @ ShaderAbstractions ~/.julia/packages/ShaderAbstractions/20WwW/src/program.jl:107
  [7] sprint(::Function; context::Nothing, sizehint::Int64)
    @ Base ./strings/io.jl:114
  [8] sprint
    @ ./strings/io.jl:107 [inlined]
  [9] ShaderAbstractions.Program(context::WGLMakie.WebGL, vertshader::String, fragshader::String, instance::GeometryBasics.Mesh{…}, uniforms::Dict{…})
    @ ShaderAbstractions ~/.julia/packages/ShaderAbstractions/20WwW/src/program.jl:103
 [10] ShaderAbstractions.InstancedProgram(context::WGLMakie.WebGL, vertshader::String, fragshader::String, instance::GeometryBasics.Mesh{…}, per_instance::ShaderAbstractions.VertexArray{…}, uniforms::Dict{…})
    @ ShaderAbstractions ~/.julia/packages/ShaderAbstractions/20WwW/src/program.jl:58
 [11] scatter_shader(scene::Scene, attributes::Dict{Symbol, Any}, plot::Scatter{Tuple{Vector{Point{2, Float64}}}})
    @ WGLMakie ~/.julia/packages/WGLMakie/AhDKR/src/particles.jl:246
 [12] create_shader(scene::Scene, plot::Scatter{Tuple{Vector{Point{2, Float64}}}})
    @ WGLMakie ~/.julia/packages/WGLMakie/AhDKR/src/particles.jl:272
 [13] serialize_three(scene::Scene, plot::AbstractPlot)
    @ WGLMakie ~/.julia/packages/WGLMakie/AhDKR/src/serialization.jl:337
 [14] serialize_plots(scene::Scene, plots::Vector{Plot}, result::Vector{Any})
    @ WGLMakie ~/.julia/packages/WGLMakie/AhDKR/src/serialization.jl:325
 [15] serialize_plots
    @ ~/.julia/packages/WGLMakie/AhDKR/src/serialization.jl:322 [inlined]
 [16] insert_plot!(session::Bonito.Session{Bonito.WebSocketConnection}, scene::Scene, plot::Plot)
    @ WGLMakie ~/.julia/packages/WGLMakie/AhDKR/src/display.jl:343
 [17] insert!(screen::WGLMakie.Screen, scene::Scene, plot::Plot)
    @ WGLMakie ~/.julia/packages/WGLMakie/AhDKR/src/display.jl:362
 [18] #invokelatest#2
    @ ./essentials.jl:1055 [inlined]
 [19] invokelatest
    @ ./essentials.jl:1052 [inlined]
 [20] push!(scene::Scene, plot::Plot)
    @ Makie ~/.julia/packages/Makie/pFPBw/src/scenes.jl:492
 [21] plot!
    @ ~/.julia/packages/Makie/pFPBw/src/interfaces.jl:413 [inlined]
 [22] plot!(ax::Makie.Axis, plot::Scatter{Tuple{Vector{Point{2, Float64}}}})
    @ Makie ~/.julia/packages/Makie/pFPBw/src/figureplotting.jl:412
 [23] _create_plot!(::Function, ::Dict{Symbol, Any}, ::Makie.Axis, ::Vector{Int64})
    @ Makie ~/.julia/packages/Makie/pFPBw/src/figureplotting.jl:381
 [24] scatter!(::Makie.Axis, ::Vararg{Any}; kw::@Kwargs{markersize::Int64, strokewidth::Int64, strokecolor::Vector{Symbol}})
    @ MakieCore ~/.julia/packages/MakieCore/zO6H4/src/recipes.jl:505
 [25] top-level scope
    @ /store/users/mikheev/projects/erpgnostics_dev/dev/ERPgnostics/test/interactive_topoplots_test.jl:89
Some type information was truncated. Use `show(err)` to see complete types.
behinger commented 1 week ago

This is not an MWE, you only need one line, 'scatter...'