Graphic Calculator: FIDocalcus
Проект трёх первокурсников (по инженерному практикуму в первом семестре) по созданию графического калькулятора на FLTK C++
Loading...
Searching...
No Matches
function_crosses.h
Go to the documentation of this file.
1#pragma once
2
3// std libs
4#include <string>
5#include <utility>
6#include <vector>
7
8// Math_calc
9#include "function_roots.h"
10#include "math_base.h"
11
12namespace Math_calc {
13
14/// @brief Класс, хранящий в себе вектор точек - пересечений двух мат. функций
16 public:
17 /**
18 * @brief Инициализирует новый экземпляр function_crosses
19 * @details Поиск точек происходит на прямоугольной области, края которой -
20 * точки
21 * @param funcs: пара мат. функций
22 * @param left_bottom: левая нижняя точка - начало области поиска точек
23 * @param right_top: правая верхняя точка - конец области поиска точек
24 * @param _precision: точность
25 */
26 function_crosses(std::pair<Math_func::function, Math_func::function> funcs,
27 Math_calc::Point left_bottom, Math_calc::Point right_top,
28 double _precision);
29
30 // methods
31
32 // (перегрузка явного преобразования типов)
33 inline explicit operator std::vector<Math_calc::Point>() const {
34 return points;
35 }
36
37 // ~methods
38
39 private:
40 // vars
41
42 /// @brief Точность
43 // (используем везде, поэтому сохраняем в качестве поля)
44 double precision;
45
46 /// @brief Одна из введенных мат. функций
47 // (одна, так как нужно просто найти y, можно и в одну подставить)
49
50 std::vector<Point> points;
51
52 // ~vars
53
54 // methods
55
56 /**
57 * @brief Считает все пересечения двух мат. функций
58 * @param left_bottom: левая нижняя точка - начало области поиска точек
59 * @param right_top: правая верхняя точка - конец области поиска точек
60 * @return std::vector<Point>: точки пересечения двух мат. функций
61 */
62 std::vector<Point> crosses(Math_calc::Point left_bottom, Point right_top)
63 const; // (чтобы не хранить границы внутри класса - в аргументы)
64
65 // ~methods
66};
67
68} // namespace Math_calc
Класс, хранящий в себе вектор точек - пересечений двух мат. функций
Definition function_crosses.h:15
std::vector< Point > crosses(Math_calc::Point left_bottom, Point right_top) const
Считает все пересечения двух мат. функций
Definition function_crosses.cpp:29
function_crosses(std::pair< Math_func::function, Math_func::function > funcs, Math_calc::Point left_bottom, Math_calc::Point right_top, double _precision)
Инициализирует новый экземпляр function_crosses.
Definition function_crosses.cpp:17
double precision
Точность
Definition function_crosses.h:44
std::vector< Point > points
Definition function_crosses.h:50
Math_func::function f
Одна из введенных мат. функций
Definition function_crosses.h:48
Класс, хранящий в себе точки - пересеч. графика мат. функ. с осью Ox.
Definition function_roots.h:16
Математическая функция
Definition function.h:14
Definition domain_segments.cpp:7
Вещественная точка
Definition math_base.h:9