Gwyscan Library
 All Data Structures Files Functions Enumerations Enumerator Macros Groups
create_path_cycloid.c

Example showing how to create cycloid profile scans.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#define _USE_MATH_DEFINES
#include <math.h>
#include "lib/gwyscan.h"
int main()
{
int i;
int ndata = 0;
/*********************************** path generation **********************************/
// LabView friendly implementation
double *xydata = NULL;
ndata = gwyscan_create_path_cycloid(NULL, 1, 40, 20, 10, 10, M_PI_4);
xydata = malloc(2*ndata * sizeof(double));
gwyscan_create_path_cycloid(xydata, 1, 40, 20, 10, 10, M_PI_4);
FILE* fp = fopen("scan_path_cycloid.txt", "wt");
if (fp == NULL) {
printf("Error. Unable to open file for writing %s \n", strerror(errno));
return 0;
}
for (i = 0; i < ndata; i++)
fprintf(fp, "%d %g %g\n", i, xydata[2*i], xydata[2*i + 1]);
fclose(fp);
free(xydata);
return 0;
}