#include #include #include #include #include #include #include #include #include #include #include #include /* Main body of program */ void plotdraw(myfilnam, dirnam) char *myfilnam,*dirnam; { int fail_status,status,i; int plotid,dircount=1; int units,sizecode; char buf[133],opname[60],draw_name[25]="",vw_name[25]=""; char *dirname; char plotstring[150]=""; double draw_size[2]; tag_t part_tag,vw_tag=NULL_TAG,draw_tag; char *searchdirs={"/data/d257/release"}; logical subdirsearch ={TRUE},out_of_date; UF_PART_load_status_t error_status; UF_ASSEM_options_t assem_opts; UF_PLOT_options_t options = { 1.0,0.0, /* Scale and Rotation */ {0.0,0.0,0.0}, /* origin */ {0.0,0.0}, /* offset */ "ps_mono", /* plotter */ "ws3371", /* node */ "123456789012345", /* JOBNAME */ "", /* pause message */ "", /* baner message */ 0, /* banner flag = off */ UF_PLOT_PLOT_RELEASE, /* plot and release */ 1,1, /* media and copies */ 1, /* pen type = width */ {3,3,3} }; /* Initialize UF license */ if(!UF_is_initialized()) { status = UF_initialize(); if(status != 0) { fail_status = UF_get_fail_message(status, buf); if(fail_status == 0) { printf("Initialization failed because %s\n", buf); fflush(stdout); } else { printf("Initialization failed for unknown reason %d\n",fail_status); fflush(stdout); exit(-1); } } status=UF_set_variable("UGII_PATDIR", "/data/d257/release/patterns/dwg_formats"); status=UF_ASSEM_set_search_directories(dircount, &searchdirs,&subdirsearch); status=UF_ASSEM_ask_assem_options(&assem_opts); assem_opts.load_options=1; assem_opts.update=2; assem_opts.failure_action=1; assem_opts.load_components=1; assem_opts.load_fully=0; status=UF_ASSEM_set_assem_options(&assem_opts); } if(UF_is_initialized()) { /* printf("User function has been initialized\n"); fflush(stdout); */ } /* Open part file */ strcpy(opname,dirnam); /* printf("opname now %s\n",opname); */ strcat(opname,"/"); /* printf("opname now %s\n",opname); */ strcat(opname,myfilnam); printf("opname now %s\n",opname); printf("myfilnam now %s\n",myfilnam); exit(-1); status = UF_PART_open(opname,&part_tag,&error_status); if (status) { printf("Open Failed %d\n",status); fail_status=UF_get_fail_message(status,buf); printf("opname = %s\n",opname); printf("Fail Message %s \n",buf); fflush(stdout); exit(-1); } /* printf("part opened ...\n"); fflush(stdou); */ status = uc6497(draw_name); /* Cycle through drawings and Plot */ do { printf("Processing drawing %s ",draw_name); fflush(stdout); status = uc6479(draw_name,&units,&sizecode,draw_size); if (sizecode==1) { options.scale=1; options.rotation = 0; options.offset[0]=0; options.offset[1]=.125; } else { options.scale=17/draw_size[1]; if (11/draw_size[0]