package ephemeral

  1. Overview
  2. Docs

Module Renderer.SettingsSource

Global settings for the renderer

Sourcetype shape =
  1. | Circle
  2. | Square
  3. | Triangle
  4. | Point
  5. | Cross
  6. | H

Body shapes

Sourcetype body = {
  1. shape : shape;
    (*

    What shape the body will show as

    *)
  2. filled : bool;
    (*

    Whether the shape will be filled

    *)
  3. size : int;
    (*

    Radius, side length, side length, N/A, width depending on shape

    *)
  4. color : Graphics.color;
    (*

    Color of body

    *)
  5. table : Ephemeral.Vector_table.vtable option;
    (*

    Corresponding vector table

    *)
}

Screen-space body

Sourceval reference_body : body ref

System's reference body

Sourceval targets : body list ref

Target bodies in system

Sourceval min_x : float ref

Bounds on the plane in terms of system coordinates

Sourceval max_x : float ref

Bounds on the plane in terms of system coordinates

Sourceval min_y : float ref

Bounds on the plane in terms of system coordinates

Sourceval max_y : float ref

Bounds on the plane in terms of system coordinates

Sourcetype speed =
  1. | Slow of int
    (*

    Advance 1 entry every n frames

    *)
  2. | Fast of int
    (*

    Advance n entries every frame

    *)

Frame advancement speeds

Sourceval speeds : speed array

Pre-selected speeds

Sourceval find_index : ('a -> bool) -> 'a array -> int option
Sourceval default_speed_idx : int ref

Index of initial speed setting

Sourceval title_text : string option ref

Title text to be drawn at the top of the screen

Sourceval dynamic_scale : bool ref

Whether to use per-frame dynamic scaling

Sourceval view_theta : float ref

Azimuth

Sourceval view_phi : float ref

Elevation