Skip to content

[feat] Add Makie extension - #300

Open
kunzaatko wants to merge 7 commits into
JuliaGeometry:masterfrom
kunzaatko:makie
Open

kunzaatko wants to merge 7 commits into
JuliaGeometry:masterfrom
kunzaatko:makie

Conversation

@kunzaatko

@kunzaatko kunzaatko commented Aug 27, 2025 •

Copy link
Copy Markdown
Contributor

Makie extension with the same plots as those from the RecipesBase extension.

  • Add documentation to the plot recipes
  • Add to Rotations Documentation
  • export the methods from Rotations? or define them there and import them for documentation?
  • Basic recipe same as from RecipesBase
  • Make the cube in 3D Rotation plot visible better with some edges
  • Add attributes from the children plots
  • Add arrows to the ends of the line segments
  • Use the new Makie ComputationPipeline API
  • Document the attributes
  • fix overlapping segments with mesh in 3D Rotation plot
julia> using Rotations

julia> using GLMakie

julia> rot = Angle2d(π/3);

julia> plot(rot; axis=(;aspect=DataAspect()))

julia> rot3 = RotXYZ(π/3, π/2, π/5);

julia> plot(rot3)
rot rot3

@kunzaatko

Copy link
Copy Markdown
Contributor Author

Note

Saving figures using MakieMaestro

julia> rot = RotMatrix(π/3)
2×2 RotMatrix2{Float64} with indices SOneTo(2)×SOneTo(2):
 0.5       -0.866025
 0.866025   0.5

julia> savefig(() -> plot(rot; axis=(;aspect=DataAspect())), "rot.png", (10u"cm", 15u"cm"))
┌ Warning: Figure directory not set. Using default value: You may set it by calling MakieMaestro.figure_dir!(dir). Using
│ current working directory "/home/kunzaatko/Dev/julia/Rotations"
└ @ MakieMaestro /home/kunzaatko/Dev/julia/MakieMaestro.jl/src/export/utils.jl:32
[ Info: Building figure rot.png in /home/kunzaatko/Dev/julia/Rotations
rot
julia> rot3 = RotXYZ(π/3, π/2, π/3)
3×3 RotXYZ{Float64} with indices SOneTo(3)×SOneTo(3)(1.0472, 1.5708, 1.0472):
 3.06162e-17  -5.30288e-17   1.0
 0.866025     -0.5          -5.30288e-17
 0.5           0.866025      3.06162e-17

julia> savefig(() -> plot(rot3), "rot3.png", (30u"cm", 30u"cm"); backends=[GLMakie], override_theme=Theme(figure_padding=40), u
pdate=true)
┌ Warning: Figure directory not set. Using default value: You may set it by calling MakieMaestro.figure_dir!(dir). Using
│ current working directory "/home/kunzaatko/Dev/julia/Rotations"
└ @ MakieMaestro /home/kunzaatko/Dev/julia/MakieMaestro.jl/src/export/utils.jl:32
[ Info: Building figure rot3.png in /home/kunzaatko/Dev/julia/Rotations
rot3

@kunzaatko

Copy link
Copy Markdown
Contributor Author

Do you have any suggestions for this?
How should I proceed with the missing TODOs?

  • Should I add the documentation? (I would like to use MakieMaestro for that to make it easier if you permit that)
  • Should I include the plotting methods in the main package so that I can document them there?

@kunzaatko
kunzaatko marked this pull request as ready for review August 28, 2025 12:07
@kunzaatko
kunzaatko marked this pull request as draft September 1, 2025 11:03
@kunzaatko
kunzaatko marked this pull request as ready for review September 1, 2025 11:03
@kunzaatko

Copy link
Copy Markdown
Contributor Author

This PR is ready for review @andreasKroepelin

@andreasKroepelin

Copy link
Copy Markdown
Contributor

Sorry, why am I being tagged?

@kunzaatko

Copy link
Copy Markdown
Contributor Author

Sorry if this was a mistake, I wanted to tag someone who is a maintainer of the repo and saw that the last commit was from you.

@kunzaatko

Copy link
Copy Markdown
Contributor Author

@mbauman Hi! Sorry for tagging you directly, but this PR is ready for review and it adds some nice features in my opinion which shouldn't be controvesial. Could you take a look at it?

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants