| NG_graphESI | Function (ROM Call 0x25E)

estack.h

void NG_graphESI (CESI ptr, HANDLE Handle);

Evaluates an expressions for graphing purposes.

NG_graphESI is the function used in TIOS during drawing function graphs. It evaluates the entry on the expression stack pointed to by ptr in "APPROX" mode then pushes the result on the top of the expression stack, similar to what NG_approxESI does, but NG_graphESI requires that all variables in the expression must be defined, i.e. the expression must evaluate to a number (else "Undefined variable" error will be thrown). Handle is the handle of the function in which the expression is defined. I don't know exactly when and why this function needs this handle (probably to check which variables are parameters of the function, which variables are local etc.). When I tried to pass H_NULL to this function, nothing bad happened. However, in the absence of more info, avoid this function.

Uses: all_tail, delete_between, next_expression_index, top_estack, ER_catch, ER_success, ER_throwVar, NG_control, primary_tag_list, push_simplify, push_simplify_statements, ROM Call 0x5C5, ROM Call 0x5C6, ROM Call 0x5C7, ROM Call 0x5C8, ROM Call 0x5CB, ROM Call 0x5CC
Used by: GR3_paint3d, GR3_xyToWindow, de_loop, execute_graph_func, GR3_addContours, run_one_seq