|
| 1 | +# License for this file: MIT (expat) |
| 2 | +# Copyright 2022, DLR Institute of System Dynamics and Control |
| 3 | +# |
| 4 | +# This file is part of module |
| 5 | +# Modia3D.Shapes (Modia3D/src/Shapes/_module.jl) |
| 6 | +# |
| 7 | + |
| 8 | +""" |
| 9 | + loadPalettes!(; solidMaterialPalette = nothing, |
| 10 | + contactPairMaterialPalette = nothing, |
| 11 | + visualMaterialPalette = nothing, |
| 12 | + log = true |
| 13 | +Read the palettes for which a file name is given and store them as global palettes in Modia3D. |
| 14 | +If `log=true`, log the reading of the files. |
| 15 | +
|
| 16 | +When Modia3D is used the first time, it reads the palettes automatically from |
| 17 | +`"Modia3D/palettes/*.sjon"`. The `loadPalettes` function overwrites this default setting. |
| 18 | +
|
| 19 | +# Examples |
| 20 | +
|
| 21 | +``` |
| 22 | +file1 = "$(Modia3D.path)/palettes/solidMaterials.json" |
| 23 | +file2 = "$(Modia3D.path)/palettes/contactPairMaterials.json" |
| 24 | +file3 = "$(Modia3D.path)/palettes/visualMaterials.json" |
| 25 | +
|
| 26 | +Modia3D.loadPalettes!(solidMaterialPalette = file1, |
| 27 | + contactPairMaterialPalette = file2, |
| 28 | + visualMaterialPalette = file3) |
| 29 | +``` |
| 30 | +""" |
| 31 | +function loadPalettes!(; solidMaterialPalette = nothing, |
| 32 | + contactPairMaterialPalette = nothing, |
| 33 | + visualMaterialPalette = nothing, |
| 34 | + log = true)::Nothing |
| 35 | + if !isnothing(solidMaterialPalette) |
| 36 | + if log |
| 37 | + println(" Reading solidMaterialPalette from JSON file \"$solidMaterialPalette\".") |
| 38 | + end |
| 39 | + rereadSolidMaterialFromJSON(file = solidMaterialPalette) |
| 40 | + end |
| 41 | + |
| 42 | + if !isnothing(contactPairMaterialPalette) |
| 43 | + if log |
| 44 | + println(" Reading contactPairMaterialPalette from JSON file \"$contactPairMaterialPalette\".") |
| 45 | + end |
| 46 | + rereadContactPairMaterialFromJSON(file = contactPairMaterialPalette) |
| 47 | + end |
| 48 | + |
| 49 | + if !isnothing(visualMaterialPalette) |
| 50 | + if log |
| 51 | + println(" Reading visualMaterialPalette from JSON file \"$visualMaterialPalette\".") |
| 52 | + end |
| 53 | + rereadVisualMaterialFromJSON(file = visualMaterialPalette) |
| 54 | + end |
| 55 | + |
| 56 | + return nothing |
| 57 | +end |
| 58 | + |
| 59 | + |
| 60 | +""" |
| 61 | + showPalettes() |
| 62 | + |
| 63 | +Show loaded palettes |
| 64 | +""" |
| 65 | +function showPalettes()::Nothing |
| 66 | + println("\nsolidMaterialPalette = ", Modia3D.solidMaterialPalette[1]) |
| 67 | + println("\ncontactPairMaterialPalette = ", Modia3D.contactPairMaterialPalette[1]) |
| 68 | + println("\nvisualMaterialPalette = ", Modia3D.visualMaterialPalette) |
| 69 | + return nothing |
| 70 | +end |
0 commit comments