Julia: Difference between revisions

From David's Wiki
No edit summary
No edit summary
Line 51: Line 51:
[https://github.com/rdeits/MeshCat.jl Link]<br>
[https://github.com/rdeits/MeshCat.jl Link]<br>
A wrapper for graphics visualizations around three.js. This opens in a web browser but can be used for making helium apps.
A wrapper for graphics visualizations around three.js. This opens in a web browser but can be used for making helium apps.
See [[Graphics in Julia]] for more details on how to use this.

Revision as of 12:59, 10 September 2019


Basic Usage

Package Management

Guide Initializing a new project

cd project_folder
julia
] activate ./
# Add your packages

Loading an existing project

cd project_folder
julia
using Pkg;
Pkg.activate("./");
Pkg.instantiate();

String Interpolation

"Variable x is $x, y is $y, and x+y is $(x+y)"

Higher order functions

Julia supports high-order functions.

ts = ((a, b) -> (c, d) -> a + b + c + d)(1,2);

The call with arguments (1,2) returns a function.
Then ts is equivalent to

ts = (c, d) -> 1 + 2 + c + d;

You can also use the full function(a,b) syntax.

Animation Loop

You can use Timer(callback, delay, interval). This is similar to SetInterval in JavaScript.

animate = Timer(function(t)
    println("Animating")
end, 0; interval=1/60)


Useful Packages

MeshCat.jl

Link
A wrapper for graphics visualizations around three.js. This opens in a web browser but can be used for making helium apps. See Graphics in Julia for more details on how to use this.