limepixl / function-rotator

Simple function-to-mesh visualizer made with C++ and OpenGL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Македонски

function-rotator е програма која вчитува математичка функција и има способност да создаде тридимензионално тело преку ротација на истата функција, околу една оска.

За да ја тестирате програмата најпрво мора да ја компајлирате:

  1. Горе десно, кликнете го Clone or download копчето и кликнете Download ZIP. Откако ќе се симне, отворете го zip фајлот и извлечете го фолдерот на вашата позадина (или каде е погодно).
  2. Кликнете два пати на build.bat, и откако ќе се испечати пораката Build complete, затворете го прозорецот. (Ако ви се појави син прозорец предупредувајќи дека build.bat може да биде непосакувана програма, кликнете на More info и потоа Run Anyway. Програмата само го повикува компајлерот, и ништо повеќе.)
  3. Потоа, кликнете два пати на function-rotator.exe и следете ги упатствата дадени во новосоздадениот прозорец.

Внесување функција

Кога програмата ќе ја побара математичката функција, таа треба да е без празни места и со соодветен број на загради.

Програмата ги поддржува следните оператори: +, -, *, /, ^, sqrt, sin, cos, tan, cot. По последните 5 оператори (функциите), следи заграда со даден параметар. Пример: sin(x), sqrt(16), итн. (sinx не е валидно).

Програмата има поддршка само за функции со променлива x (од типот f(x)). За различни видови функции, може да ги смените линиите код 10-12 од фајлот function.h во src фолдерот, и повторно да ги извршите горенаведените чекори 2 и 3.

Контроли

Програмата има неколку опции на интеракција кои овозможуваат различни гледни точки и начини на цртање во тридимензионалниот простор.

  • SPACE - Го вклучува/исклучува прегледот на создаденото тело
  • A - Ја менува оската на пресек
  • Mouse: Left Click - При кликнување и држење на копчето, може да ротирате рачно околу просторот
  • Mouse: Right Click - При кликнување и држење на копчето, може да ја помрднувате рамнината на пресек по должината на оската на пресек
  • Mouse: Scroll - Зумирање
  • R - Ја вклучува/исклучува автоматската ротација
  • M - Го вклучува/исклучува прегледот на поединечните триаголници
  • L - Ја вклучува/исклучува светлината (експериментално)

Можни проблеми

  • Ако при тестирање на програмата се испечати порака "Failed to initialize GLAD" и програмата се исклучува веднаш, треба да симнете нова верзија на драјвер за вашиот графички процесор. Тука може да прочитате како се прави тоа. Програмата би требало да работи по овој чекор, но ако повторно не работи, вашиот систем не поддржува графичка растеризација преку користење на OpenGL 2.1 (2006-та година).
  • Ако програмата не ја вчита функцијата правилно, проверете дали користите доволно обвивачки загради. Пример: x^tan(x) создава проблеми. Пробајте x^(tan(x)). Во последен случај, сменете ја функцијата во кодот како што е објаснето во делот Внесување функција

About

Simple function-to-mesh visualizer made with C++ and OpenGL

License:MIT License


Languages

Language:C++ 89.4%Language:GLSL 5.2%Language:Batchfile 2.8%Language:Shell 1.4%Language:CMake 1.2%