Oberon Function Plotter is an advanced VBA macro addon for CorelDRAW 10, 11, 12, X3, X4, X5, X6, X7 and Corel DESIGNER 10, 12 that allows you to plot parametric function graphs by defining the functions in analytical form. There are quite a few programs that allow to create function lots already however most of them are selfcontained modules with limited editing and illustration capabilities. Oberon Function Plotter coupled with the editing power of CorelDRAW provides the highest output quality.
If you are a student preparing your math paper or a scientist doing a scientific report, Oberon Function Plotter will help make your work precise and appealing. Even if you are a designer and look for certain curve patterns for your design, Oberon Function Plotter is for you.
Get Oberon Function Plotter for CorelDRAW 10X5Get Oberon Function Plotter for CorelDRAW X6X7 
Features
 Accepts analytical function representations such as x(t) = sin(t) + cos(2*t).
 Supports over 30 standard functions including sin, cos, tan, sqrt.
 Define your own functions with any number of arguments.
 Instant formula syntax check.
 Live plot preview right in the dialog.
 Automatic scale and axes adjustment.
 Fully customizable parameters (colors, lines, text, etc).
 Save/load projects.
 Import/export custom function lists.
 Unlimited number of function plots on a single graph.
 Resulting curves in CorelDRAW/Corel DESIGNER are smooth and with minimal number of nodes.
 New. Plots tabulated data. Copy pairs of X and Y coordinates from Microsoft Excel or import data from TXT/CSV file and have it plotted.
 New. Built in data editor for tabulated functions:
System Requirements
Function Plotter for CorelDRAW 10:
This program requires CorelDRAW 10 Service Pack 1 (10.427) or later. Correct functioning under the original release of CorelDRAW 10 (10.410) is not guaranteed. This program will not run under earlier versions of CorelDRAW.
If you don’t have the latest version of CorelDRAW 10, download the service pack(s) from Corel web site: http://www.corel.com/support/ftpsite/pub/coreldraw/draw10suite/index.htm
You have to have Visual Basic for Applications installed to run this program. VBA is not installed by default with CorelDRAW 10 Graphics suite. You need to do a custom installation and choose to install VBA. You can run the VBA install manually by running the vba6.msi installation package from \Corel\Graphics10\Config\Redist\VBA6 folder of the CorelDRAW 10 CD#1.
Function Plotter for CorelDRAW 11/12/X3/X4/X5/X6/X7 and Corel DESIGNER 10/12:
A retail version of CorelDRAW/Corel DESIGNER is required.
You must ensure that Visual Basic for Applications is installed along with CorelDRAW / Corel DESIGNER.
Installation
Run the setup program and it should install all the files for you automatically. Make sure that you have VBA installed beforehand. The setup program also creates a new workspace that is automatically made active. You can revert to your previous workspace by just going to Tools>Options>Workspace in CorelDRAW and selecting the workspace that you want.
Launching Function Plotter
To launch Oberon Function Plotter, start CorelDRAW first. If during installation you specified that you wanted to activate Function Plotter workspace in CorelDRAW, you will see a new button on toolbar:
You can start Function Plotter by clicking this button. The same command also appears on the Tools menu.
If you didn’t activate the workspace during installation, you still can start Function Plotter by going to Tools>Visual Basic>Play… menu to bring up the VBA Macros dialog:
Select "Plotter (Plotter11.gms)" item from Macros in list and
start the macro "Main.StartPlotter" by selecting it in Macro name list and clicking Run button.
Registration
You need to register the program to continue using it. The registration fee is US$9.95.
The same registration number can be used to install Function Plotter for CorelDRAW 10, 11, 12, X3, X4, X5 and X7.
Register Function Plotter online:
Register Oberon Function Plotter through RegNow using a secure
server
Acknowledgements
Special thanks go to Erik Vestergaard for his help in testing the program as well as for his useful suggestions on its features.
Function Plotter: Supported Functions
The following functions, operators and constants are predefined in Oberon Function Plotter:
Functions 

abs(t)  Returns the absolute value of a number, a number without its sign. 
arccos(t)  Returns the arccosine of a number, in radians in the range 0 to Pi. 
arccosh(t)  Returns the inverse hyperbolic cosine of a number. 
arcsin(t)  Returns the arcsine of a number in radians, in the range Pi/2 to Pi/2. 
arcsinh(t)  Returns the inverse hyperbolic sine of a number. 
arctan(t)  Returns the arctangent of a number in radians, in the range Pi/2 to Pi/2. 
arctan2(ty,tx)  Returns the arctangent of the specified x and y coordinates, in radians between Pi and Pi, excluding Pi. 
arctanh(t)  Returns the inverse hyperbolic tangent of a number 
ceil(t)  Rounds a number up, to the nearest integer 
cos(t)  Returns the cosine of an angle 
cosh(t)  Returns the hyperbolic cosine of a number 
degrees(t)  Converts radians to degrees. 
exp(t)  Returns e raised to the power of a given number. 
fact(t)  Returns the factorial of a number, x! 
fix(t)  Returns the integer part of a number. 
floor(t)  Rounds a number down, to the nearest integer 
frac(t)  Returns the fractional part of a number. 
if(t,a,b)  Returns the value of a if t is not zero, otherwise returns b. 
integrate(f(x),x,a,b,dx)  Returns a numerical approximation to the integral of f with respect to x from a to b. dx is an optional parameter representing the step of integration. 
ln(t)  Returns the natural logarithm of a number. 
log(t,base)  Returns the logarithm of a number to the given base. 
log10(t)  Returns the base10 logarithm of a number. 
max(a,b)  Returns a greater number of a or b. 
min(a,b)  Returns a lesser number of a or b. 
mod(t,divisor)  Returns the remainder after a number is divided by a divisor. 
product(expr,n,n1,n2,s)  Evaluates the expression ‘expr’ for each integer value of index ‘n’ from ‘n1’ to ‘n2’ and multiplies the results up. If the step ‘s’ value is not specified, 1 is assumed 
radians(t)  Converts degrees to radians. 
rand(t)  Returns a random number greater than or equal to 0 and less than 1. Parameter is optional. If omitted or positive, returns next random number. If zero, returns last generated number. If negative, resets the generator to a new sequence using the value as random seed. 
sign(t)  Returns the sign of a number: 1 if the number is positive, zero if the number is zero, or 1 if the number is negative. 
sin(t)  Returns the sine of an angle. 
sinh(t)  Returns the hyperbolic sine of a number. 
sqrt(t)  Returns a square root of a number. 
sum(expr,n,n1,n2,s)  Evaluates the expression ‘expr’ for each integer value of index ‘n’ from ‘n1’ to ‘n2’ and adds up the results. If the step ‘s’ value is not specified, 1 is assumed 
tan(t)  Returns the tangent of an angle. 
tanh(t)  Returns the hyperbolic tangent of a number. 
Operators  
+  Addition: A + B 
–  Subtraction: A – B 
*  Multiplication: A * B 
/  Division: A / B 
^  Power: A ^ B 
&  Logical AND: (A & B) = 1 if both A and B are not zero, 0 otherwise 
  Logical OR: (A  B) = 1 if either A or B is not zero, 0 otherwise 
!  Logical NOT: (!A) = 1 if A is zero, 0 otherwise 
>  Greater than: (A > B) = 1 if A is greater than B 
<  Less than: (A < B) = 1 if A is less than B 
>=  Greater than or equal to: (A >= B) = 1 if A is greater than or equal to B 
<=  Less than or equal to: A <= B = 1 if A is less than or equal to B 
=  Greater than or equal to: (A = B) = 1 if A is equal to B 
<>  Less than or equal to: A <> B = 1 if A is not equal to B 
Constants  
pi  Returns the value of Pi, 3.14159265358979 
e  Returns the value of the base of natural logarithm, 2.71828182845905 