You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/src/rendering.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,16 +2,16 @@
2
2
3
3
Multibody.jl has an automatic 3D-rendering feature that draws a mechanism in 3D. This can be used to create animations of the mechanism's motion from a solution trajectory, as well as to create interactive applications where the evolution of time can be controlled by the user.
4
4
5
-
The functionality requires the user to load any of the Makie frontend packages, e.g.,
5
+
The functionality requires the user to install and load one of the [Makie backend packages](https://docs.makie.org/), e.g.,
6
6
```julia
7
-
using GLMakie # Preferred when running locally
7
+
using GLMakie # Preferred
8
8
```
9
9
or
10
10
```julia
11
11
using CairoMakie
12
12
```
13
13
!!! note "Backend choice"
14
-
GLMakie and WGLMakie produce much nicer-looking animations and is also significantly faster than CairoMakie. CairoMakie may be used to produce the graphics in some web environments if constraints imposed by the web environment do not allow any of the GL alternatives. CairoMakie struggles with the Z-order of drawn objects, sometimes making bodies that should have been visible hidden behind bodies that are further back in the scene.
14
+
GLMakie and WGLMakie produce much nicer-looking animations and are also significantly faster than CairoMakie. CairoMakie may be used to produce the graphics in some web environments if constraints imposed by the web environment do not allow any of the GL alternatives. CairoMakie struggles with the Z-order of drawn objects, sometimes making bodies that should have been visible hidden behind bodies that are further back in the scene.
15
15
16
16
After that, the [`render`](@ref) function is the main entry point to create 3D renderings. This function has the following methods:
Joint where `frame_a` rotates around axis `n_a` which is fixed in `frame_a` and `frame_b` rotates around axis `n_b` which is fixed in `frame_b`. The two frames coincide when `revolute_a.phi=0` and `revolute_b.phi=0`. This joint has the following potential states;
273
+
274
+
- The relative angle `phi_a = revolute_a.phi` [rad] around axis `n_a`
275
+
- the relative angle `phi_b = revolute_b.phi` [rad] around axis `n_b`
# @test_skip begin # The modelica example uses angles_fixed = true, which causes the body component to run special code for variable initialization. This is not yet supported by MTK
554
551
# Without proper initialization, the example fails most of the time. Random perturbation of u0 can make it work sometimes.
555
552
sol =solve(prob, Rodas4())
556
553
@test SciMLBase.successful_retcode(sol)
557
554
558
-
@info"Initialization broken, initial value for body.r_0 not respected, add tests when MTK has a working initialization"
0 commit comments