int main(int argc, char **argv) { struct arguments args; args.theta_file = ""; args.phi_file = ""; args.scale_file = ""; args.cube_name = ""; args.neuron_name = ""; args.output_name = "output"; args.min_width = 0; args.renderScale = 1; argp_parse(&argp, argc, argv, 0, 0, &args); printf("The arguments are:\n cube_name: %s\n neuron_name: %s\n" " output_name: %s\n theta_file: %s\n phi_file: %s\n scale_name: %s\n" " min_width: %f\n renderScale = %f\n", args.cube_name.c_str(), args.neuron_name.c_str(), args.output_name.c_str(), args.theta_file.c_str(), args.phi_file.c_str(), args.scale_file.c_str(), args.min_width, args.renderScale); // exit(0); Neuron* neuron = new Neuron(args.neuron_name); Cube<uchar, ulong>* orig = new Cube<uchar,ulong>(args.cube_name); Cube<uchar,ulong>* rendered = orig->create_blank_cube_uchar(args.output_name); Cube<float, double>* theta = NULL; Cube<float, double>* phi = NULL; Cube<float, double>* scale = NULL; if(args.theta_file != "") theta = orig->create_blank_cube(args.theta_file); if(args.phi_file != "") phi = orig->create_blank_cube(args.phi_file); if(args.scale_file != "") scale = orig->create_blank_cube(args.scale_file); neuron->renderInCube(rendered, theta, phi, scale, args.min_width, args.renderScale); // rendered->put_all(255); // neuron->renderSegmentInCube(neuron->dendrites[0],rendered, theta, phi, scale, args.min_width, args.renderScale); }