-
Notifications
You must be signed in to change notification settings - Fork 0
SLGaus, SLMath
SLMath je knihovna, která slouží k vyhodnocování matematických výrazů, matematické analýze a zobrazovaní výsledků v rovině (prostoru).
Základem knihovny jsou dvě třídy MathExpr a MathVar, které se starají o vyhodnocování matematických výrazů
MathExpr Třída vyhodnocuje matematické výrazy: např: 5+sin(2). Třída pracuje s výrazy bez proměnných a umí vyhodnocovat následující funkce:SIN, COS, TAN, ASIN, ACOS, ATAN, ABS, SQRT, EXP, LN, LOG. Poznámka: Třída v současné době neobsahuje syntaktickou kontrolu.
Třída obsahuje 4 veřejné metody: void SetExpresion(char expres); - Nastavíme výraz, který budeme chtít vyhodnotit char GetExpresion(); - Vrátí výraz uložený v objektu double Evaluate(); - Vyhodnotí zadaný výraz double Evaluate(char * part); - Vyhodnotí výraz zadaný v parametru
MathVar Třída slouží k popisu proměnné. Obsahuje dvě veřejné vlastnosti: String name – jméno proměnné double vlalue – hodnota proměnné
SLMathExp
Vlastnosti obou tříd spojuje dohromady .NET komponenta SLMathExp. Která vyhodnocuje matematické výrazy včetně proměnných. Důležitou poznámkou je, že třídy MathVar a SLMathExp využívají rozšíření Managed C++. Podívejme se na možnosti komponenty:
Metoda Evaluate() - vyčíslí výraz Vlastnost Expresion – (get/set) vrací, nastaví výraz Metoda SetExpresion(string) – nastaví výraz Metoda AddVariable(string name, double value) – přidá proměnnou do seznamu proměnných. Metoda DeleteVariable(string name) – vymaže proměnnou ze seznamu proměnných Metoda SetVariable(string name, double value) – nastaví hodnotu proměnné Metoda GetVariable(string name) – vrátí hodnotu proměnné