Skip to content

aflak-vis/aflak

master
Switch branches/tags
Code

Latest commit

* [node_editor] Add some events to RenderEvent

- add_owned_transform: Event for recovering a Transform that removed
  with RemoveNode
- Undo/Redo: Event to undo/redo the previous action

Other changes
- Fix bug in the ROI selector drawing position

* [node_editor] Add ProvenanceEvent

Provenance Event is a RenderEvent with some additional information;
besides Undo/Redo, this type will be used as a visual program change
history.

Other changes
- Add new funtion to RenderEvent

* [node_editor] Implement fmt::Debug for ProvenanceEvent

Other changes
- Declaration of use of required data type

* [node_editor] Define behavior for each event

- Execute event behavior considering Undo and Redo
- valid_history stores the event history up to the current state; this
  variable is referenced when executing Undo (i.e., pop and run).
- redo_stack stores undo events; this variable is referenced when
  performing redo. When a new event is executed, this stack is emptied.

* [node_editor] Change specifications of some event functions

- connect/write_default_input: add leave_provenance to the argument
- Add add_owned_transform

* [node_editor] Add of ProvenanceEvent for valid_history

Additional information is required for each type of event.

* [main] Add import information to valid_history after startup

* [node_editor] Change ImportError/ExportError specs

* [node_editor] Add AddOwnedTransform event content

* [node_editor] Add keyboard control for Undo/Redo

* [node_editor] Change ChangeOutputName add condition

* [cake] Change DST method specs

- outputs_of_transformation/inputs_attached_to: make public
- new_transform_idx: add macro ID as as argument, change to detect
  positions where key does not exist and add a new item
- new_output_id: change to detect positions where key does not exist and
  add a new item
- add attach_output_with_id_name/create_output_with_id_name

Other changes
- add read to InputDefaultsMut

* [cake] Change DSTError and ImportError to inherit Clone

* [primitives] Add HashMap

* [node_editor] Change from std::io::Error to Arc<std::io::Error>

* [node_editor] Add node_states_mut, active_node_mut to NodeEditorLayout

* [cake] Add created_time to DST, and then add max_updated_on function

* [primitives] Update nalgebra dependency

* [primitives] Remove topology additions

- Topologies will be added in the future

* [cake] Add created_time to DST::new

* [node_editor] Make event module public

* Set rust edition to 2021

The minimum Rust version will be 1.56.0 accordingly.
1cffde1

Git stats

Files

Permalink
Failed to load latest commit information.

Aflak - アフラーク

Aflak - A visualization environment to analyze astronomical datasets by providing a visual programming language interface.

Build Status Latest release on crates.io

Screenshot of Aflak

IN ACTIVE DEVELOPMENT: Features and API highly unstable!

Download binary (nightly)

Getting started

# Open a FITS file with aflak
aflak -f <FITS_FILE>
# See CLI help
aflak --help

You may find a demo video here.

Disclaimer: Most testing until now has been done with FITS files sampled from the SDSS MaNGA, and some files from ALMA. Standard-compliant FITS should be openable without issue, if you meet any issue, please file an issue, provide the FITS file, a screenshot and explain what's wrong/unexpected.

NB:

  • The first time you run aflak, the window layout may not be what you prefer. You may want to resize / move some windows with the mouse the very first time your run aflak. Hopefully, aflak remembers the arrangement of your windows between sessions.
  • It is advised to use aflak with a large screen more 2000-pixel large for a better experience. 3000-pixel is even better!

Build from source

Install the rust toolchain with rustup. You will need a working C & C++ environment to install from sources.

Quick install (nightly)

cargo install --git https://github.com/aflak-vis/aflak aflak

Update

If aflak is already installed, just append the --force flag to the cargo command in order to overwrite the current install of aflak with a new one.

cargo install --force --git https://github.com/aflak-vis/aflak aflak

Slower install

Clone the git repository.

git clone https://github.com/aflak-vis/aflak
cd aflak/src
cargo install --path .

Build

cd aflak/src
cargo build --release

Run aflak from source

cd aflak/src
cargo run --release -- -f <FITS_FILE>

Contributing, bug report, feature request

Please read the contribution guide.

Newsletter

Please fill your e-mail address on this link to subscribe to aflak's monthly newsletter and follow aflak's development.

About

Advanced Framework for Learning Astrophysical Knowledge

Resources

License

Stars

Watchers

Forks

Packages

No packages published