Makie.jl: [feature request] Billboarded text in 3D

Created on 14 Mar 2019  路  3Comments  路  Source: JuliaPlots/Makie.jl

I am using Makie to do 3D geometry with polyhedra from the Polyhedra.jl package and I really miss the ability to label points when using scatter(). One workaround I have found is to use a different letter for each point, as markers. But this does not look good and is limited to single characters. Ideally I would like to use TeX strings. I hope this is a realistic request.

enhancement help wanted

Most helpful comment

Thanks, it does work but not when rotating the camera interactively (i.e. the text rotates with the rest of the picture, in my opinion it should not). An option for annotations to face the camera would be fantastic.

All 3 comments

In principle, this should work:


scene = scatter(rand(10), rand(10), rand(10), markersize = 0.05)
points = lift(x-> map(x-> x .+ Point3f0(0.1), x), scene[end][1])
annotations!(scene, ["hi" for i in 1:10], points, textsize = 0.05, rotation = ((1.0, 0.0,0.0), pi/2))

It's a bit annoying, since you'll need to figure out the rotation to be correct.
You can do:

a = qrotation(Vec3f0(1.0, 0.0,0.0), pi/2)
b = qrotation(Vec3f0(0.0, 1.0,0.0), pi/2)
rotation = a * b

to rotate around multiple axes...

I should just have an option in annotations to be camera facing!

Thanks, it does work but not when rotating the camera interactively (i.e. the text rotates with the rest of the picture, in my opinion it should not). An option for annotations to face the camera would be fantastic.

Bump

Was this page helpful?
0 / 5 - 0 ratings