You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
920 B
45 lines
920 B
#ifndef PROJECTOR_HPP
|
|
#define PROJECTOR_HPP
|
|
|
|
#include <vector>
|
|
|
|
#include "Canvas.hpp"
|
|
|
|
class Canvas;
|
|
|
|
class Projector{
|
|
public:
|
|
|
|
unsigned int extern_dim;
|
|
unsigned int intern_dim;
|
|
|
|
Canvas * canvas;
|
|
double * project_point;
|
|
|
|
double * range_min;
|
|
double * range_max;
|
|
double factor;
|
|
double * offset;
|
|
|
|
void init(double * point);
|
|
void init_vector();
|
|
void init_range();
|
|
void update_range(double * point);
|
|
void finish_range();
|
|
|
|
|
|
// TODO : Matrix gebruiken voor lineaire afbeelding
|
|
// TODO : Over kleuren nadenken
|
|
/*
|
|
Kleurmodi:
|
|
-genormalizeerde coordinaten als kleurintensiteit (gebruikt fp canvas)
|
|
-kleurbanden, dus met een periodieke functie (gebruikt int canvas)
|
|
*/
|
|
void project(const double * point);
|
|
void plot(const double * point);
|
|
|
|
void output();
|
|
};
|
|
|
|
#endif // PROJECTOR_HPP
|
|
|
|
|