Skip to content

Latest commit

 

History

History
80 lines (59 loc) · 2.27 KB

README.md

File metadata and controls

80 lines (59 loc) · 2.27 KB

tracers.cpp GitHub release API reference Travis (.com)

This repository is part of the project Algorithm Visualizer.

tracers.cpp is a visualization library for C++. You can use it on algorithm-visualizer.org or locally on your machine.

Prerequisites

Installation

  1. Download and extract the source code in the latest release.

  2. Change directory to it and run:

mkdir build

cd build

cmake ..

make install

Usage

// import visualization libraries {
#include "algorithm-visualizer.h"
// }

#include <vector>
#include <string>

// define tracer variables {
Array2DTracer array2dTracer = Array2DTracer("Grid");
LogTracer logTracer = LogTracer("Console");
// }

// define input variables
std::vector<std::string> messages{
        "Visualize",
        "your",
        "own",
        "code",
        "here!",
};

// highlight each line of messages recursively
void highlight(int line) {
    if (line >= messages.size()) return;
    std::string message = messages[line];
    // visualize {
    logTracer.println(message);
    array2dTracer.selectRow(line, 0, message.size() - 1);
    Tracer::delay();
    array2dTracer.deselectRow(line, 0, message.size() - 1);
    // }
    highlight(line + 1);
}

int main() {
    // visualize {
    Layout::setRoot(VerticalLayout({array2dTracer, logTracer}));
    array2dTracer.set(messages);
    Tracer::delay();
    // }
    highlight(0);
    return 0;
}

Check out the API reference for more information.

Contributing

Check out the contributing guidelines.