#include <stdio.h>#include <math.h>#include <string.h>#include "machine.h"#include "bcg.h"#include "sciprint.h"#include "periScreen.h"#include "math_graphics.h"#include "periPos.h"#include "color.h"#include "MALLOC.h"Include dependency graph for periPos.c:

Go to the source code of this file.
Data Structures | |
| struct | alinfo |
| struct | bgc |
| struct | posfont |
| struct | SciFontInfo |
Defines | |
| #define | Char2Int(x) ( x & 0x000000ff ) |
| #define | FPRINTF(x) fprintf x |
| #define | Thick_prec 5 |
| #define | MAXDASH 6 |
| #define | NUMSETFONC 32 |
| #define | NB_MAX_POS_FONT 10 |
| #define | NB_MAX_SIZES 6 |
| #define | MAXSIZE 8320 |
| #define | PERLINE 20 |
| #define | FORMATNUM "%d " |
| #define | FONTNUMBER 11 |
| #define | FONTMAXSIZE 6 |
| #define | SYMBOLNUMBER 10 |
Typedefs | |
| typedef posfont | PosFont |
Functions | |
| void C2F() | WriteGeneric1Pos (char *string, integer nobjpos, integer objbeg, integer sizeobj, integer *vx, integer *vy, integer flag, integer *fvect) |
| void C2F() | xgetmarkPos (integer *verbose, integer *symb, integer *narg, double *dummy) |
| void C2F() | xsetmarkPos (integer *number, integer *size, integer *v3, integer *v4) |
| void C2F() | xgetfontPos (integer *verbose, integer *font, integer *nargs, double *dummy) |
| void C2F() | xsetfontPos (integer *fontid, integer *fontsize, integer *v3, integer *v4) |
| void C2F() | setdashstylePos (integer *value, integer *xx, integer *n) |
| void C2F() | Write2VectPos (integer *vx, integer *vy, integer from, integer n, char *string, integer flag, integer fv) |
| void C2F() | WriteGenericPos (char *string, integer nobj, integer sizeobj, integer *vx, integer *vy, integer sizev, integer flag, integer *fvect) |
| void C2F() | InitScilabGCPos (integer *v1, integer *v2, integer *v3, integer *v4) |
| void C2F() | setforegroundPos (integer *num, integer *v2, integer *v3, integer *v4) |
| void C2F() | ScilabGCGetorSetPos (char *str, integer flag, integer *verbose, integer *x1, integer *x2, integer *x3, integer *x4, integer *x5, integer *x6, double *dx1) |
| void C2F() | setbackgroundPos (integer *num, integer *v2, integer *v3, integer *v4) |
| void C2F() | set_cPos (integer i) |
| void C2F() | idfromnamePos (char *name1, integer *num) |
| void C2F() | getdashPos (integer *verbose, integer *value, integer *narg, double *dummy) |
| void C2F() | setscilabFigurePos (integer *v1, integer *v2, integer *v3, integer *v4, integer *v5, integer *v6, double *figure) |
| void C2F() | getscilabFigurePos (integer *verbose, integer *x, integer *narg, double *figure) |
| void C2F() | setscilabVersionPos (integer *vers, integer *v2, integer *v3, integer *v4) |
| void C2F() | getscilabVersionPos (integer *verbose, integer *vers, integer *narg, double *dummy) |
| void C2F() | setscilabxgcPos (integer *v1, integer *v2, integer *v3, integer *v4) |
| void C2F() | getscilabxgcPos (integer *verbose, integer *x, integer *narg, double *dummy) |
| void | setposfig (integer *i, integer *j) |
| static double | ascentPos (void) |
| static int | fontsizePos (void) |
| static int C2F() | PosQueryFont (char *name) |
| static void C2F() | displaysymbolsPos (char *str, integer *n, integer *vx, integer *vy) |
| static void | WriteColorRGB (char *str, double *tab, int ind) |
| static void | WriteColorRGBDef (char *str, short unsigned int *tab, int ind) |
| void FileInit | __PARAMS ((void)) |
| void C2F() | xselgraphicPos (char *v1, integer *v2, integer *v3, integer *v4, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | xendgraphicPos (void) |
| void C2F() | xendPos (char *v1, integer *v2, integer *v3, integer *v4, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | clearwindowPos (char *v1, integer *v2, integer *v3, integer *v4, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | xclickPos (char *str, integer *ibutton, integer *xx1, integer *yy1, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | xclick_anyPos (char *str, integer *ibutton, integer *xx1, integer *yy1, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | xgetmousePos (char *str, integer *ibutton, integer *xx1, integer *yy1, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | clearareaPos (char *str, integer *x, integer *y, integer *w, integer *h, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | getwindowposPos (integer *verbose, integer *x, integer *narg, double *dummy) |
| void C2F() | setwindowposPos (integer *x, integer *y, integer *v3, integer *v4) |
| void C2F() | getwindowdimPos (integer *verbose, integer *x, integer *narg, double *dummy) |
| void C2F() | setwindowdimPos (integer *x, integer *y, integer *v3, integer *v4) |
| void C2F() | setcurwinPos (integer *intnum, integer *v2, integer *v3, integer *v4) |
| void C2F() | getcurwinPos (integer *verbose, integer *intnum, integer *narg, double *dummy) |
| void C2F() | setclipPos (integer *x, integer *y, integer *w, integer *h) |
| void C2F() | unsetclipPos (integer *v1, integer *v2, integer *v3, integer *v4) |
| void C2F() | getclipPos (integer *verbose, integer *x, integer *narg, double *dummy) |
| void C2F() | setabsourelPos (integer *num, integer *v2, integer *v3, integer *v4) |
| void C2F() | getabsourelPos (integer *verbose, integer *num, integer *narg, double *dummy) |
| void C2F() | setalufunctionPos (char *string) |
| void C2F() | setalufunction1Pos (integer *num, integer *v2, integer *v3, integer *v4) |
| void C2F() | getalufunctionPos (integer *verbose, integer *value, integer *narg, double *dummy) |
| void C2F() | setthicknessPos (integer *value, integer *v2, integer *v3, integer *v4) |
| void C2F() | getthicknessPos (integer *verbose, integer *value, integer *narg, double *dummy) |
| void C2F() | setpatternPos (integer *num, integer *v2, integer *v3, integer *v4) |
| void C2F() | getpatternPos (integer *verbose, integer *num, integer *narg, double *dummy) |
| void C2F() | getlastPos (integer *verbose, integer *num, integer *narg, double *dummy) |
| void C2F() | set_dash_or_color_Pos (integer *value, integer *v2, integer *v3, integer *v4) |
| void C2F() | setdashPos (integer *value, integer *v2, integer *v3, integer *v4) |
| void C2F() | set_dash_and_color_Pos (integer *value, integer *v2, integer *v3, integer *v4) |
| void C2F() | set_line_style_Pos (integer *value, integer *v2, integer *v3, integer *v4) |
| void C2F() | get_dash_or_color_Pos (integer *verbose, integer *value, integer *narg, double *dummy) |
| void C2F() | get_dash_and_color_Pos (integer *verbose, integer *value, integer *narg, double *dummy) |
| void C2F() | usecolorPos (integer *num, integer *v2, integer *v3, integer *v4) |
| void C2F() | getusecolorPos (integer *verbose, integer *num, integer *narg, double *dummy) |
| void | setcolormapgPos (struct BCG *Xgc, integer *v1, integer *v2, double *a, integer *v3) |
| void C2F() | setgccolormapPos (struct BCG *Xgc, integer m, double *a, integer *v3) |
| void C2F() | getcolormapsizePos (integer *v1, integer *v2, integer *v3, double *val) |
| void C2F() | getcolormapPos (integer *v1, integer *v2, integer *v3, double *val) |
| void C2F() | setcolormapPos (integer *v1, integer *v2, integer *v3, integer *v4, integer *v5, integer *v6, double *a) |
| void | ColorInit (void) |
| void C2F() | getbackgroundPos (integer *verbose, integer *num, integer *narg, double *dummy) |
| void C2F() | getforegroundPos (integer *verbose, integer *num, integer *narg, double *dummy) |
| void C2F() | sethidden3dPos (integer *num, integer *v2, integer *v3, integer *v4) |
| void C2F() | gethidden3dPos (integer *verbose, integer *num, integer *narg, double *dummy) |
| void C2F() | semptyPos (integer *v1, integer *v2, integer *v3, integer *v4) |
| void C2F() | setwwhowPos (integer *verbose, integer *v2, integer *v3, integer *v4) |
| void C2F() | gemptyPos (integer *verbose, integer *v2, integer *v3, double *dummy) |
| void C2F() | scilabgcgetPos (char *str, integer *verbose, integer *x1, integer *x2, integer *x3, integer *x4, integer *x5, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | scilabgcsetPos (char *str, integer *x1, integer *x2, integer *x3, integer *x4, integer *x5, integer *x6, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | displaystringPos (char *string, integer *x, integer *y, integer *v1, integer *flag, integer *v6, integer *v7, double *angle, double *dv2, double *dv3, double *dv4) |
| static void | PosStrBox (char *str, integer id_font, integer id_size, double *w, double *h) |
| static double | PosStrAsc (integer id_font, integer id_size) |
| void C2F() | boundingboxPos (char *string, integer *x, integer *y, integer *rect, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | drawlinePos (integer *xx1, integer *yy1, integer *x2, integer *y2) |
| void C2F() | drawsegmentsPos (char *str, integer *vx, integer *vy, integer *n, integer *style, integer *iflag, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | drawarrowsPos (char *str, integer *vx, integer *vy, integer *n, integer *as, integer *style, integer *iflag, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | drawrectanglesPos (char *str, integer *vects, integer *fillvect, integer *n, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | drawrectanglePos (char *str, integer *x, integer *y, integer *width, integer *height, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | fillrectanglePos (char *str, integer *x, integer *y, integer *width, integer *height, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | fillarcsPos (char *str, integer *vects, integer *fillvect, integer *n, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | drawarcsPos (char *str, integer *vects, integer *style, integer *n, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | drawarcPos (char *str, integer *x, integer *y, integer *width, integer *height, integer *angle1, integer *angle2, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | fillarcPos (char *str, integer *x, integer *y, integer *width, integer *height, integer *angle1, integer *angle2, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | drawpolylinesPos (char *str, integer *vectsx, integer *vectsy, integer *drawvect, integer *n, integer *p, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | fillpolylinesPos (char *str, integer *vectsx, integer *vectsy, integer *fillvect, integer *n, integer *p, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | drawpolylinePos (char *str, integer *n, integer *vx, integer *vy, integer *closeflag, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | fillpolylinePos (char *str, integer *n, integer *vx, integer *vy, integer *closeareaflag, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | drawpolymarkPos (char *str, integer *n, integer *vx, integer *vy, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | initgraphicPos (char *string, integer *v2, integer *v3, integer *v4, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void | FileInit (void) |
| void C2F() | drawaxisPos (char *str, integer *alpha, integer *nsteps, integer *v2, integer *initpoint, integer *v6, integer *v7, double *size, double *dx2, double *dx3, double *dx4) |
| void C2F() | displaynumbersPos (char *str, integer *x, integer *y, integer *v1, integer *v2, integer *n, integer *flag, double *z, double *alpha, double *dx3, double *dx4) |
| void C2F() | getFontMaxSizePos (char *str, integer *sizeMin, integer *sizeMax, integer *v1, integer *v2, integer *v3, integer *v4, double *dx1, double *dx2, double *dx3, double *dx4) |
| void C2F() | loadfamilyPos (char *name, integer *j, integer *v3, integer *v4, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | queryfamilyPos (char *name, integer *j, integer *v3, integer *v4, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void C2F() | initgraphicfromscreenPos (char *string, integer *v2, integer *v3, integer *v4, integer *v5, integer *v6, integer *v7, double *dv1, double *dv2, double *dv3, double *dv4) |
| void | FileInitFromScreenPos (void) |
Variables | |
| BCG | ScilabGCPos |
| static BOOL | ScilabGCPos_is_initialized = FALSE |
| static double * | vdouble = 0 |
| static FILE * | file = stdout |
| static integer | prec_fact = 10 |
| static integer | def_width = 600 |
| static integer | def_height = 424 |
| alinfo | AluStrucPos [] |
| static integer | DashTabPos [MAXDASH][4] |
| bgc | ScilabGCTabPos [] |
| static PosFont | Courier |
| static int | WidthSymbol [] |
| static PosFont | Symbol |
| static int | WidthTimesR [] |
| static PosFont | TimesR |
| static int | WidthTimesI [] |
| static PosFont | TimesI |
| static int | WidthTimesB [] |
| static PosFont | TimesB |
| static int | WidthTimesBI [] |
| static PosFont | TimesBI |
| static int | WidthHelvetica [] |
| static PosFont | Helvetica |
| static int | WidthHelveticaB [] |
| static PosFont | HelveticaB |
| static int | WidthHelveticaO [] |
| static PosFont | HelveticaO |
| static int | WidthHelveticaBO [] |
| static PosFont | HelveticaBO |
| static PosFont * | FontArray [NB_MAX_POS_FONT] |
| static int | Font_Size_in_pts [NB_MAX_SIZES] = {8, 10, 12, 14, 18, 24} |
| integer | FontsListPos [FONTNUMBER][FONTMAXSIZE] |
| SciFontInfo | FontInfoTabPos [FONTNUMBER] |
| static char * | sizePos [] = { "08" ,"10","12","14","18","24"} |
| static int | isizePos [] = { 8 ,10,12,14,18,24} |
| char | symb_listPos [] |
| #define FONTNUMBER 11 |
| void FileInit __PARAMS | ( | (void) | ) |
| static double ascentPos | ( | void | ) | [static] |
Definition at line 1602 of file periPos.c.
References C2F, font, PosStrAsc(), prec_fact, vdouble, and xgetfontPos().
Referenced by displaystringPos().
01603 { 01604 static integer verbose=0,nargs,font[2]; 01605 C2F(xgetfontPos)(&verbose,font,&nargs,vdouble); 01606 return (PosStrAsc(font[0], font[1]) * prec_fact); 01607 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() boundingboxPos | ( | char * | string, | |
| integer * | x, | |||
| integer * | y, | |||
| integer * | rect, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
To get the bounding rectangle of a string (modified by Bruno by using the previus datas and functions)
Definition at line 1587 of file periPos.c.
References C2F, font, PosStrBox(), prec_fact, vdouble, and xgetfontPos().
Referenced by displaystringPos(), and xcall_in_word_set().
01589 { 01590 integer verbose,nargs,font[2]; 01591 double h, w; 01592 verbose=0; 01593 C2F(xgetfontPos)(&verbose,font,&nargs,vdouble); 01594 PosStrBox(string, font[0], font[1], &w, &h); 01595 rect[0]= *x; 01596 rect[1]= (integer)(*y-h*prec_fact); 01597 rect[2]= (integer)(w*prec_fact); 01598 rect[3]= (integer)(h*prec_fact); 01599 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() clearareaPos | ( | char * | str, | |
| integer * | x, | |||
| integer * | y, | |||
| integer * | w, | |||
| integer * | h, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Clear a rectangle
Definition at line 156 of file periPos.c.
References FALSE, file, FPRINTF, ScilabGCPos_is_initialized, sciprint(), and x.
Referenced by xcall_in_word_set().
00157 { 00158 00159 if ( ScilabGCPos_is_initialized == FALSE ) { 00160 sciprint("xinit must be called before any action \r\n"); 00161 return; 00162 } 00163 00164 FPRINTF((file,"\n [ %d %d %d %d ] clearzone",(int)*x,(int)*y,(int)*w,(int)*h)); 00165 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() clearwindowPos | ( | char * | v1, | |
| integer * | v2, | |||
| integer * | v3, | |||
| integer * | v4, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
In Postscript : nothing
Sending the scale etc.. in case we want an other plot
Definition at line 135 of file periPos.c.
Referenced by xcall_in_word_set().
Here is the caller graph for this function:

| void ColorInit | ( | void | ) |
Initial colormap : The arrays were filled with the numbers that we get with xget("colormap")
Definition at line 1004 of file periPos.c.
References default_colors, DEFAULTNUMCOLORS, BCG::Numcolors, ScilabGCPos, and WriteColorRGBDef().
Referenced by FileInit(), and FileInitFromScreenPos().
01005 { 01006 int m = DEFAULTNUMCOLORS; 01007 01008 ScilabGCPos.Numcolors = m; 01009 WriteColorRGBDef("R",default_colors,0); 01010 WriteColorRGBDef("G",default_colors,1); 01011 WriteColorRGBDef("B",default_colors,2); 01012 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() displaynumbersPos | ( | char * | str, | |
| integer * | x, | |||
| integer * | y, | |||
| integer * | v1, | |||
| integer * | v2, | |||
| integer * | n, | |||
| integer * | flag, | |||
| double * | z, | |||
| double * | alpha, | |||
| double * | dx3, | |||
| double * | dx4 | |||
| ) |
Definition at line 2175 of file periPos.c.
References buf, C2F, BCG::CurNumberDispFormat, displaystringPos(), FALSE, i, PD0, PI0, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
Referenced by xcall_in_word_set().
02176 { integer i ; 02177 char buf[20]; 02178 02179 if ( ScilabGCPos_is_initialized == FALSE ) { 02180 sciprint("xinit must be called before any action \r\n"); 02181 return; 02182 } 02183 02184 for (i=0 ; i< *n ; i++) 02185 { 02186 sprintf(buf,ScilabGCPos.CurNumberDispFormat,z[i]); 02187 C2F(displaystringPos)(buf,&(x[i]),&(y[i]),PI0,flag,PI0,PI0,&(alpha[i]),PD0,PD0,PD0) ; 02188 } 02189 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() displaystringPos | ( | char * | string, | |
| integer * | x, | |||
| integer * | y, | |||
| integer * | v1, | |||
| integer * | flag, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | angle, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 1294 of file periPos.c.
References ascentPos(), boundingboxPos(), C2F, FALSE, file, fontsizePos(), FPRINTF, i, int, PD0, PI0, prec_fact, ScilabGCPos_is_initialized, and sciprint().
Referenced by displaynumbersPos(), and xcall_in_word_set().
01295 { 01296 integer i,rect[4] ; 01297 int yn_ = (int) (*y + ascentPos()); 01298 01299 if ( ScilabGCPos_is_initialized == FALSE ) { 01300 sciprint("xinit must be called before any action \r\n"); 01301 return; 01302 } 01303 01304 C2F(boundingboxPos)(string,x,&yn_,rect,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 01305 FPRINTF((file,"\n(")); 01306 for ( i=0; i < (int)strlen(string);i++) 01307 { 01308 if (string[i]== '(' || string[i] == ')' ) 01309 FPRINTF((file,"%c%c",'\\',string[i])); 01310 else 01311 FPRINTF((file,"%c",string[i])); 01312 } 01313 FPRINTF((file,") %d %d %d %5.2f [%d %d %d %d] Show", 01314 (int)*x,yn_ , 01315 (int)*flag,*angle,(int)rect[0], 01316 (int)rect[1],(int)rect[2],(int)rect[3])); 01317 01318 FPRINTF((file,"\n%%Latex:\\myput{%d}{%d}{%d}{%s}", 01319 (int)*x,def_height*prec_fact - yn_, 01320 fontsizePos ()/2, 01321 string)); 01322 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() drawarcPos | ( | char * | str, | |
| integer * | x, | |||
| integer * | y, | |||
| integer * | width, | |||
| integer * | height, | |||
| integer * | angle1, | |||
| integer * | angle2, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
caution angle=degreAngle*64
fvect set to tell that we only want to draw not to fill
Definition at line 1804 of file periPos.c.
References C2F, FALSE, fillarcsPos(), i, BCG::IDLastPattern, PD0, PI0, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
Referenced by xcall_in_word_set().
01805 { 01806 integer i =1; 01807 integer fvect[1] ; 01808 integer vects[6]; 01809 01810 if ( ScilabGCPos_is_initialized == FALSE ) { 01811 sciprint("xinit must be called before any action \r\n"); 01812 return; 01813 } 01814 01815 vects[0]= *x;vects[1]= *y;vects[2]= *width; 01816 vects[3]= *height;vects[4]= *angle1;vects[5]= *angle2; 01818 fvect[0] = ScilabGCPos.IDLastPattern + 3 ; /* out of colormap, so don't fill */ 01819 C2F(fillarcsPos)(str,vects,fvect,&i,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 01820 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() drawarcsPos | ( | char * | str, | |
| integer * | vects, | |||
| integer * | style, | |||
| integer * | n, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
caution : angle=degreangle*64
to fix the style
to say that we don't want to fill the arcs
Definition at line 1775 of file periPos.c.
References C2F, FALSE, fillarcsPos(), get_dash_and_color_Pos(), i, BCG::IDLastPattern, na, PD0, PI0, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), set_dash_and_color_Pos(), set_line_style_Pos(), and vdouble.
Referenced by xcall_in_word_set().
01776 { 01777 integer verbose=0,Dnarg,Dvalue[10]; 01778 int i; 01779 01780 if ( ScilabGCPos_is_initialized == FALSE ) { 01781 sciprint("xinit must be called before any action \r\n"); 01782 return; 01783 } 01784 01785 /* store the current values */ 01786 C2F(get_dash_and_color_Pos)(&verbose,Dvalue,&Dnarg,vdouble); 01787 for ( i=0 ; i < *n ; i++) 01788 { 01789 integer fvect,na=1; 01791 C2F(set_line_style_Pos)(&style[i],PI0,PI0,PI0); 01792 01794 fvect = ScilabGCPos.IDLastPattern + 3 ; /* out of colormap, so don't fill */ 01795 C2F(fillarcsPos)(str,&vects[(6)*i],&fvect,&na,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 01796 } 01797 C2F(set_dash_and_color_Pos)( Dvalue,PI0,PI0,PI0); 01798 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() drawarrowsPos | ( | char * | str, | |
| integer * | vx, | |||
| integer * | vy, | |||
| integer * | n, | |||
| integer * | as, | |||
| integer * | style, | |||
| integer * | iflag, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Draw a set of arrows
all the arrows have the same color
Definition at line 1657 of file periPos.c.
References C2F, FALSE, get_dash_and_color_Pos(), i, L, PI0, ScilabGCPos_is_initialized, sciprint(), set_dash_and_color_Pos(), set_line_style_Pos(), vdouble, and WriteGenericPos().
Referenced by xcall_in_word_set().
01658 { 01659 integer verbose=0,Dnarg,Dvalue[10],NDvalue; 01660 int i; 01661 01662 if ( ScilabGCPos_is_initialized == FALSE ) { 01663 sciprint("xinit must be called before any action \r\n"); 01664 return; 01665 } 01666 01667 C2F(get_dash_and_color_Pos)(&verbose,Dvalue,&Dnarg,vdouble); 01668 /* store the current values */ 01669 if ((int) *iflag == 0 ) 01670 { 01672 NDvalue=(*style < 1) ? Dvalue[0] : *style; 01673 C2F(set_line_style_Pos)(&NDvalue,PI0,PI0,PI0); 01674 C2F(WriteGenericPos)("drawarrows",(integer)1L,(*n)*2,vx,vy,*n,(integer)1L,as); 01675 } 01676 else 01677 { 01678 for ( i=0 ; i < *n/2 ; i++) 01679 { 01680 NDvalue = style[i]; 01681 C2F(set_line_style_Pos)(&NDvalue,PI0,PI0,PI0); 01682 /*C2F(setpatternPos)(&NDvalue,PI0,PI0,PI0); commented out ss 13/09/00 */ 01683 C2F(WriteGenericPos)("drawarrows",(integer)1L,(integer)4L,&vx[2*i],&vy[2*i],(integer)2L,(integer)1L,as); 01684 } 01685 } 01686 C2F(set_dash_and_color_Pos)( Dvalue,PI0,PI0,PI0); 01687 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() drawaxisPos | ( | char * | str, | |
| integer * | alpha, | |||
| integer * | nsteps, | |||
| integer * | v2, | |||
| integer * | initpoint, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | size, | |||
| double * | dx2, | |||
| double * | dx3, | |||
| double * | dx4 | |||
| ) |
Definition at line 2158 of file periPos.c.
References FALSE, file, FPRINTF, ScilabGCPos_is_initialized, and sciprint().
Referenced by xcall_in_word_set().
02159 { 02160 if ( ScilabGCPos_is_initialized == FALSE ) { 02161 sciprint("xinit must be called before any action \r\n"); 02162 return; 02163 } 02164 02165 FPRINTF((file,"\n %d [%d %d] [%f %f %f] [%d %d] drawaxis", 02166 (int)*alpha,(int)nsteps[0],(int)nsteps[1],size[0],size[1],size[2], 02167 (int)initpoint[0],(int)initpoint[1])); 02168 }
Here is the call graph for this function:

Here is the caller graph for this function:

Draw a single line in current style
Definition at line 1611 of file periPos.c.
References FALSE, file, FPRINTF, ScilabGCPos_is_initialized, and sciprint().
01612 { 01613 if ( ScilabGCPos_is_initialized == FALSE ) { 01614 sciprint("xinit must be called before any action \r\n"); 01615 return; 01616 } 01617 01618 FPRINTF((file,"\n %d %d %d %d L",(int)*xx1,(int)*yy1,(int)*x2,(int)*y2)); 01619 }
Here is the call graph for this function:

| void C2F() drawpolylinePos | ( | char * | str, | |
| integer * | n, | |||
| integer * | vx, | |||
| integer * | vy, | |||
| integer * | closeflag, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
according to *closeflag : it's a polyline or a polygon
fvect set to tell that we only want to draw not to fill
Definition at line 1916 of file periPos.c.
References C2F, FALSE, file, fillpolylinesPos(), FPRINTF, i, PD0, PI0, ScilabGCPos_is_initialized, and sciprint().
Referenced by drawpolylinesPos(), and xcall_in_word_set().
01917 { integer i =1; 01918 integer fvect[1] ; 01919 01920 if ( ScilabGCPos_is_initialized == FALSE ) { 01921 sciprint("xinit must be called before any action \r\n"); 01922 return; 01923 } 01924 01926 fvect[0] = 0; 01927 if (*closeflag == 1 ) 01928 FPRINTF((file,"\n/closeflag true def")); 01929 else 01930 FPRINTF((file,"\n/closeflag false def")); 01931 C2F(fillpolylinesPos)(str,vx,vy,fvect,&i,n,PI0,PD0,PD0,PD0,PD0); 01932 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() drawpolylinesPos | ( | char * | str, | |
| integer * | vectsx, | |||
| integer * | vectsy, | |||
| integer * | drawvect, | |||
| integer * | n, | |||
| integer * | p, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
drawvect[i] < 0 use a line style for polyline i
on utilise la marque de numero associ\'ee
on utilise un style pointill\'e
back to default values
Definition at line 1850 of file periPos.c.
References C2F, close(), drawpolylinePos(), drawpolymarkPos(), FALSE, get_dash_and_color_Pos(), i, PD0, PI0, ScilabGCPos_is_initialized, sciprint(), set_dash_and_color_Pos(), set_line_style_Pos(), vdouble, xgetmarkPos(), and xsetmarkPos().
Referenced by xcall_in_word_set().
01851 { integer verbose ,symb[2],Mnarg,Dnarg,Dvalue[10],NDvalue,i,close; 01852 verbose =0 ; 01853 01854 if ( ScilabGCPos_is_initialized == FALSE ) { 01855 sciprint("xinit must be called before any action \r\n"); 01856 return; 01857 } 01858 01859 /* store the current values */ 01860 C2F(xgetmarkPos)(&verbose,symb,&Mnarg,vdouble); 01861 C2F(get_dash_and_color_Pos)(&verbose,Dvalue,&Dnarg,vdouble); 01862 for (i=0 ; i< *n ; i++) 01863 { 01864 if (drawvect[i] <= 0) 01865 { 01866 NDvalue = - drawvect[i]; 01867 C2F(xsetmarkPos)(&NDvalue,symb+1,PI0,PI0); 01868 01869 C2F(drawpolymarkPos)(str,p,vectsx+(*p)*i,vectsy+(*p)*i,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 01870 } 01871 else 01872 { 01874 C2F(set_line_style_Pos)(drawvect+i,PI0,PI0,PI0); 01875 close = 0; 01876 C2F(drawpolylinePos)(str,p,vectsx+(*p)*i,vectsy+(*p)*i,&close,PI0,PI0,PD0,PD0,PD0,PD0); 01877 } 01878 } 01880 C2F(set_dash_and_color_Pos)(Dvalue,PI0,PI0,PI0); 01881 C2F(xsetmarkPos)(symb,symb+1,PI0,PI0); 01882 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() drawpolymarkPos | ( | char * | str, | |
| integer * | n, | |||
| integer * | vx, | |||
| integer * | vy, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
by vx and vy (vx[i],vy[i])
Definition at line 1955 of file periPos.c.
References C2F, BCG::CurHardSymbSize, displaysymbolsPos(), FALSE, BCG::FontId, BCG::FontSize, i, PI0, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), sz, and xsetfontPos().
Referenced by drawpolylinesPos(), and xcall_in_word_set().
01956 { 01957 integer keepid,keepsize,i=1,sz; 01958 01959 if ( ScilabGCPos_is_initialized == FALSE ) { 01960 sciprint("xinit must be called before any action \r\n"); 01961 return; 01962 } 01963 01964 sz=ScilabGCPos.CurHardSymbSize; 01965 keepid = ScilabGCPos.FontId; 01966 keepsize= ScilabGCPos.FontSize; 01967 C2F(xsetfontPos)(&i,&sz,PI0,PI0); 01968 C2F(displaysymbolsPos)(str,n,vx,vy); 01969 C2F(xsetfontPos)(&keepid,&keepsize,PI0,PI0); 01970 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() drawrectanglePos | ( | char * | str, | |
| integer * | x, | |||
| integer * | y, | |||
| integer * | width, | |||
| integer * | height, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 1711 of file periPos.c.
References C2F, drawrectanglesPos(), FALSE, i, PD0, PI0, ScilabGCPos_is_initialized, and sciprint().
Referenced by xcall_in_word_set().
01712 { 01713 integer i = 1; 01714 integer fvect[1] ; 01715 integer vects[4]; 01716 01717 if ( ScilabGCPos_is_initialized == FALSE ) { 01718 sciprint("xinit must be called before any action \r\n"); 01719 return; 01720 } 01721 01722 vects[0]= *x;vects[1]= *y;vects[2]= *width; 01723 vects[3]= *height; 01725 fvect[0] = 0; 01726 C2F(drawrectanglesPos)(str,vects,fvect,&i,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 01727 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() drawrectanglesPos | ( | char * | str, | |
| integer * | vects, | |||
| integer * | fillvect, | |||
| integer * | n, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
fillvect[*n] : specify the action (see periX11.c)
Definition at line 1697 of file periPos.c.
References C2F, FALSE, getpatternPos(), L, PI0, ScilabGCPos_is_initialized, sciprint(), setpatternPos(), vdouble, and WriteGenericPos().
Referenced by drawrectanglePos(), fillrectanglePos(), and xcall_in_word_set().
01698 { 01699 integer cpat,verb=0,num; 01700 01701 if ( ScilabGCPos_is_initialized == FALSE ) { 01702 sciprint("xinit must be called before any action \r\n"); 01703 return; 01704 } 01705 01706 C2F(getpatternPos)(&verb,&cpat,&num,vdouble); 01707 C2F(WriteGenericPos)("drawbox",*n,(integer)4L,vects,vects,4*(*n),(integer)0L,fillvect); 01708 C2F(setpatternPos)(&(cpat),PI0,PI0,PI0); 01709 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() drawsegmentsPos | ( | char * | str, | |
| integer * | vx, | |||
| integer * | vy, | |||
| integer * | n, | |||
| integer * | style, | |||
| integer * | iflag, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
for i=0 step 2
all segments have the same color or dash style
Definition at line 1625 of file periPos.c.
References C2F, FALSE, getpatternPos(), i, L, ScilabGCPos_is_initialized, sciprint(), vdouble, and WriteGenericPos().
Referenced by xcall_in_word_set().
01626 { 01627 integer verbose=0,Dnarg,Dvalue[10],NDvalue; 01628 int i; 01629 01630 if ( ScilabGCPos_is_initialized == FALSE ) { 01631 sciprint("xinit must be called before any action \r\n"); 01632 return; 01633 } 01634 01635 /* store the current values */ 01636 C2F(getpatternPos)(&verbose,Dvalue,&Dnarg,vdouble); 01637 if ((int) *iflag == 0 ) 01638 { 01640 NDvalue= (*style < 1) ? Dvalue[0] : *style; 01641 C2F(WriteGenericPos)("drawsegs",(integer)1L,(*n)*2,vx,vy,*n,(integer)1L,&NDvalue); 01642 } 01643 else 01644 { 01645 for ( i=0 ; i < *n/2 ; i++) 01646 { 01647 integer NDvalue_; 01648 NDvalue_ = style[i]; 01649 C2F(WriteGenericPos)("drawsegs",(integer)1L,(integer)4L,&vx[2*i],&vy[2*i],(integer)2L,(integer)1L,&NDvalue_); 01650 } 01651 } 01652 /*C2F(set_dash_and_color_Pos)( Dvalue,PI0,PI0,PI0);*/ 01653 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void FileInit | ( | void | ) |
Definition at line 2016 of file periPos.c.
References C2F, ColorInit(), file, FPRINTF, getwindowdimPos(), BCG::IDLastPattern, InitScilabGCPos(), PI0, prec_fact, ScilabGCPos, ScilabGCPos_is_initialized, TRUE, and vdouble.
Referenced by initgraphicPos().
02017 { 02018 /* int m, ierr=0; */ 02020 integer x[2],verbose,narg; 02021 verbose = 0; 02022 C2F(getwindowdimPos)(&verbose,x,&narg,vdouble); 02023 ColorInit(); 02024 FPRINTF((file,"\n%%scipos_w=%d\n%%scipos_h=%d",(int)x[0]/2,(int)x[1]/2)); 02025 FPRINTF((file,"\n%% Dessin en bas a gauche de taille %d,%d",(int)x[0]/2,(int)x[1]/2)); 02026 FPRINTF((file,"\n[0.5 %d div 0 0 0.5 %d div neg 0 %d %d div] concat", 02027 (int)prec_fact, (int)prec_fact,(int)x[1]/2,(int) prec_fact )); 02028 FPRINTF((file,"\n%% Init driver ")); 02029 FPRINTF((file,"\n/PaintBackground {WhiteLev 2 add background eq {}{ (drawbox) 4 [background 1 add] [0 0 %d %d] dogrey}ifelse } def", x[0],x[1])); 02030 02031 ScilabGCPos_is_initialized = TRUE; /* add the flag ScilabGCPos_is_initialized to test if xinit has been called */ 02032 InitScilabGCPos(PI0,PI0,PI0,PI0); 02033 02034 FPRINTF((file,"\n%% End init driver ")); 02035 FPRINTF((file,"\n/WhiteLev %d def",ScilabGCPos.IDLastPattern)); 02036 02037 02038 /* /\** If the X window exists we check its colormap **\/ */ 02039 /* if ( CheckColormap(&m) == 1) */ 02040 /* { */ 02041 /* int i; */ 02042 /* float r,g,b; */ 02043 /* ScilabGCPos.Numcolors = m; */ 02044 /* ScilabGCPos.NumForeground = m; */ 02045 /* ScilabGCPos.NumBackground = m + 1; */ 02046 /* if (ScilabGCPos.CurColorStatus == 1) */ 02047 /* { */ 02048 /* ScilabGCPos.IDLastPattern = ScilabGCPos.Numcolors - 1; */ 02049 /* FPRINTF((file,"\n/WhiteLev %d def",ScilabGCPos.IDLastPattern)); */ 02050 /* } */ 02051 /* FPRINTF((file,"\n/ColorR [")); */ 02052 /* for ( i=0; i < m ; i++) */ 02053 /* { */ 02054 /* get_r(i,&r); */ 02055 /* FPRINTF((file,"%f ",r)); */ 02056 /* if ( (i % 10 ) == 0 ) FPRINTF((file,"\n")); */ 02057 /* } */ 02058 /* FPRINTF((file,"0.0 1.0] def")); */ 02059 /* FPRINTF((file,"\n/ColorG [")); */ 02060 /* for ( i=0; i < m ; i++) */ 02061 /* { */ 02062 /* get_g(i,&g); */ 02063 /* FPRINTF((file,"%f ",g)); */ 02064 /* if ( (i % 10 ) == 0 ) FPRINTF((file,"\n")); */ 02065 /* } */ 02066 /* FPRINTF((file,"0.0 1.0] def")); */ 02067 /* FPRINTF((file,"\n/ColorB [")); */ 02068 /* for ( i=0; i < m; i++) */ 02069 /* { */ 02070 /* get_b(i,&b); */ 02071 /* FPRINTF((file,"%f ",b)); */ 02072 /* if ( (i % 10 ) == 0 ) FPRINTF((file,"\n")); */ 02073 /* } */ 02074 /* FPRINTF((file,"0.0 1.0] def")); */ 02075 /* } */ 02076 02077 /* C2F(setgccolormapPos)(&ScilabGCPos,32, default_colors, &ierr); */ 02078 02079 02080 02081 FPRINTF((file,"\n%%Latex:\\setlength{\\unitlength}{%4.2fpt}", 02082 1.0/(prec_fact*2))); 02083 FPRINTF((file,"\n%%Latex:\\begin{picture}(%d,%d)(%d,0)", 02084 def_width*prec_fact, 02085 def_height*prec_fact, 02086 def_width/3 /* not so clear XXX */ 02087 )); 02088 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void FileInitFromScreenPos | ( | void | ) |
Definition at line 2572 of file periPos.c.
References b, C2F, CheckColormap(), ColorInit(), BCG::CurColorStatus, FPRINTF, g, get_b(), get_g(), get_r(), getwindowdimPos(), BCG::IDLastPattern, InitScilabGCPos(), BCG::NumBackground, BCG::Numcolors, BCG::NumForeground, PI0, prec_fact, ScilabGCPos, ScilabGCPos_is_initialized, TRUE, and vdouble.
Referenced by initgraphicfromscreenPos().
02573 { 02574 int m; 02576 integer x[2],verbose,narg; 02577 verbose = 0; 02578 C2F(getwindowdimPos)(&verbose,x,&narg,vdouble); 02579 ColorInit(); 02580 FPRINTF((file,"\n%%scipos_w=%d\n%%scipos_h=%d",(int)x[0]/2,(int)x[1]/2)); 02581 FPRINTF((file,"\n%% Dessin en bas a gauche de taille %d,%d",(int)x[0]/2,(int)x[1]/2)); 02582 FPRINTF((file,"\n[0.5 %d div 0 0 0.5 %d div neg 0 %d %d div] concat", 02583 (int)prec_fact, (int)prec_fact,(int)x[1]/2,(int) prec_fact )); 02584 FPRINTF((file,"\n%% Init driver ")); 02585 FPRINTF((file,"\n/PaintBackground {WhiteLev 2 add background eq {}{ (drawbox) 4 [background 1 add] [0 0 %d %d] dogrey}ifelse } def", x[0],x[1])); 02586 02587 ScilabGCPos_is_initialized = TRUE; /* add the flag ScilabGCPos_is_initialized to test if xinit has been called */ 02588 InitScilabGCPos(PI0,PI0,PI0,PI0); 02589 02590 FPRINTF((file,"\n%% End init driver ")); 02591 FPRINTF((file,"\n/WhiteLev %d def",ScilabGCPos.IDLastPattern)); 02593 if ( CheckColormap(&m) == 1) 02594 { 02595 int i; 02596 float r,g,b; 02597 ScilabGCPos.Numcolors = m; 02598 ScilabGCPos.NumForeground = m; 02599 ScilabGCPos.NumBackground = m + 1; 02600 if (ScilabGCPos.CurColorStatus == 1) 02601 { 02602 ScilabGCPos.IDLastPattern = ScilabGCPos.Numcolors - 1; 02603 FPRINTF((file,"\n/WhiteLev %d def",ScilabGCPos.IDLastPattern)); 02604 } 02605 FPRINTF((file,"\n/ColorR [")); 02606 for ( i=0; i < m ; i++) 02607 { 02608 get_r(i,&r); 02609 FPRINTF((file,"%f ",r)); 02610 if ( (i % 10 ) == 0 ) FPRINTF((file,"\n")); 02611 } 02612 FPRINTF((file,"0.0 1.0] def")); 02613 FPRINTF((file,"\n/ColorG [")); 02614 for ( i=0; i < m ; i++) 02615 { 02616 get_g(i,&g); 02617 FPRINTF((file,"%f ",g)); 02618 if ( (i % 10 ) == 0 ) FPRINTF((file,"\n")); 02619 } 02620 FPRINTF((file,"0.0 1.0] def")); 02621 FPRINTF((file,"\n/ColorB [")); 02622 for ( i=0; i < m; i++) 02623 { 02624 get_b(i,&b); 02625 FPRINTF((file,"%f ",b)); 02626 if ( (i % 10 ) == 0 ) FPRINTF((file,"\n")); 02627 } 02628 FPRINTF((file,"0.0 1.0] def")); 02629 } 02630 02631 FPRINTF((file,"\n%%Latex:\\setlength{\\unitlength}{%4.2fpt}", 02632 1.0/(prec_fact*2))); 02633 FPRINTF((file,"\n%%Latex:\\begin{picture}(%d,%d)(%d,0)", 02634 def_width*prec_fact, 02635 def_height*prec_fact, 02636 def_width/3 /* not so clear XXX */ 02637 )); 02638 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() fillarcPos | ( | char * | str, | |
| integer * | x, | |||
| integer * | y, | |||
| integer * | width, | |||
| integer * | height, | |||
| integer * | angle1, | |||
| integer * | angle2, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
with current pattern
Definition at line 1825 of file periPos.c.
References C2F, FALSE, fillarcsPos(), getpatternPos(), i, PD0, PI0, ScilabGCPos_is_initialized, sciprint(), and vdouble.
Referenced by xcall_in_word_set().
01826 { 01827 integer i =1,vects[6]; 01828 integer cpat,verb=0,num; 01829 01830 if ( ScilabGCPos_is_initialized == FALSE ) { 01831 sciprint("xinit must be called before any action \r\n"); 01832 return; 01833 } 01834 01835 vects[0]= *x;vects[1]= *y;vects[2]= *width; 01836 vects[3]= *height;vects[4]= *angle1;vects[5]= *angle2; 01837 C2F(getpatternPos)(&verb,&cpat,&num,vdouble); 01838 C2F(fillarcsPos)(str,vects,&cpat,&i,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 01839 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() fillarcsPos | ( | char * | str, | |
| integer * | vects, | |||
| integer * | fillvect, | |||
| integer * | n, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
caution angle=degreangle*64
Definition at line 1753 of file periPos.c.
References C2F, FALSE, getpatternPos(), L, PI0, ScilabGCPos_is_initialized, sciprint(), setpatternPos(), vdouble, and WriteGenericPos().
Referenced by drawarcPos(), drawarcsPos(), fillarcPos(), and xcall_in_word_set().
01754 { 01755 integer cpat,verb,num; 01756 verb=0; 01757 01758 if ( ScilabGCPos_is_initialized == FALSE ) { 01759 sciprint("xinit must be called before any action \r\n"); 01760 return; 01761 } 01762 01763 C2F(getpatternPos)(&verb,&cpat,&num,vdouble); 01764 C2F(WriteGenericPos)("fillarc",*n,(integer)6L,vects,vects,6*(*n),(integer)0L,fillvect); 01765 C2F(setpatternPos)(&(cpat),PI0,PI0,PI0); 01766 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() fillpolylinePos | ( | char * | str, | |
| integer * | n, | |||
| integer * | vx, | |||
| integer * | vy, | |||
| integer * | closeareaflag, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Fill the polygon
just fill ==> cpat < 0
Definition at line 1936 of file periPos.c.
References C2F, FALSE, fillpolylinesPos(), getpatternPos(), i, PD0, PI0, ScilabGCPos_is_initialized, sciprint(), and vdouble.
Referenced by xcall_in_word_set().
01937 { 01938 integer i =1; 01939 integer cpat,verb=0,num; 01940 01941 if ( ScilabGCPos_is_initialized == FALSE ) { 01942 sciprint("xinit must be called before any action \r\n"); 01943 return; 01944 } 01945 01946 C2F(getpatternPos)(&verb,&cpat,&num,vdouble); 01948 cpat = -cpat; 01949 C2F(fillpolylinesPos)(str,vx,vy,&cpat,&i,n,PI0,PD0,PD0,PD0,PD0); 01950 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() fillpolylinesPos | ( | char * | str, | |
| integer * | vectsx, | |||
| integer * | vectsy, | |||
| integer * | fillvect, | |||
| integer * | n, | |||
| integer * | p, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 1895 of file periPos.c.
References C2F, CoordModeOrigin, BCG::CurVectorStyle, FALSE, file, FPRINTF, getpatternPos(), L, PI0, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), setpatternPos(), vdouble, and WriteGenericPos().
Referenced by drawpolylinePos(), fillpolylinePos(), and xcall_in_word_set().
01896 { 01897 integer cpat,verb=0,num; 01898 01899 if ( ScilabGCPos_is_initialized == FALSE ) { 01900 sciprint("xinit must be called before any action \r\n"); 01901 return; 01902 } 01903 01904 if ( ScilabGCPos.CurVectorStyle != CoordModeOrigin) 01905 FPRINTF((file,"\n/absolu false def")); 01906 C2F(getpatternPos)(&verb,&cpat,&num,vdouble); 01907 C2F(WriteGenericPos)("drawpoly",*n,(*p)*2,vectsx,vectsy,(*p)*(*n),(integer)1L, 01908 fillvect); 01909 C2F(setpatternPos)(&(cpat),PI0,PI0,PI0); 01910 FPRINTF((file,"\n/absolu true def")); 01911 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() fillrectanglePos | ( | char * | str, | |
| integer * | x, | |||
| integer * | y, | |||
| integer * | width, | |||
| integer * | height, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Draw a filled rectangle
Definition at line 1731 of file periPos.c.
References C2F, drawrectanglesPos(), FALSE, getpatternPos(), i, PD0, PI0, ScilabGCPos_is_initialized, sciprint(), and vdouble.
Referenced by xcall_in_word_set().
01732 { 01733 integer i = 1; 01734 integer vects[4]; 01735 integer cpat,verb=0,num; 01736 01737 if ( ScilabGCPos_is_initialized == FALSE ) { 01738 sciprint("xinit must be called before any action \r\n"); 01739 return; 01740 } 01741 01742 vects[0]= *x;vects[1]= *y;vects[2]= *width; 01743 vects[3]= *height ; 01744 C2F(getpatternPos)(&verb,&cpat,&num,vdouble); 01745 C2F(drawrectanglesPos)(str,vects,&cpat,&i,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 01746 }
Here is the call graph for this function:

Here is the caller graph for this function:

| static int fontsizePos | ( | void | ) | [static] |
To set the current font id of font and size
Definition at line 2337 of file periPos.c.
References BCG::FontSize, and ScilabGCPos.
Referenced by displaystringPos().
02338 { 02339 return isizePos[ScilabGCPos.FontSize]; 02340 }
Here is the caller graph for this function:

Definition at line 1165 of file periPos.c.
References sciprint().
01166 { 01167 if ( *verbose ==1 ) sciprint("\n No operation "); 01168 }
Here is the call graph for this function:

| void C2F() get_dash_and_color_Pos | ( | integer * | verbose, | |
| integer * | value, | |||
| integer * | narg, | |||
| double * | dummy | |||
| ) |
Definition at line 739 of file periPos.c.
References C2F, dummy, FALSE, getdashPos(), getpatternPos(), ScilabGCPos_is_initialized, and sciprint().
Referenced by drawarcsPos(), drawarrowsPos(), and drawpolylinesPos().
00740 { 00741 if ( ScilabGCPos_is_initialized == FALSE ) { 00742 sciprint("xinit must be called before any action \r\n"); 00743 return; 00744 } 00745 00746 /*may be improved replacing 6 by narg */ 00747 C2F(getdashPos)(verbose, value, narg,dummy); 00748 C2F(getpatternPos)(verbose, value+6, narg,dummy); 00749 *narg = 6; 00750 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() get_dash_or_color_Pos | ( | integer * | verbose, | |
| integer * | value, | |||
| integer * | narg, | |||
| double * | dummy | |||
| ) |
to get the current dash-style
Definition at line 677 of file periPos.c.
References BCG::CurColor, BCG::CurColorStatus, BCG::CurDashStyle, FALSE, i, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00678 { 00679 integer i ; 00680 00681 if ( ScilabGCPos_is_initialized == FALSE ) { 00682 sciprint("xinit must be called before any action \r\n"); 00683 return; 00684 } 00685 00686 *narg =1 ; 00687 if ( ScilabGCPos.CurColorStatus ==1) 00688 { 00689 *value= ScilabGCPos.CurColor + 1; 00690 if (*verbose == 1) sciprint("Color %d",(int)*value); 00691 return; 00692 } 00693 *value=ScilabGCPos.CurDashStyle+1; 00694 if ( *value == 1) 00695 { if (*verbose == 1) sciprint("\nLine style = Line Solid");} 00696 else 00697 { 00698 value[1]=4; 00699 *narg = value[1]+2; 00700 for ( i =0 ; i < value[1]; i++) value[i+2]=DashTabPos[*value-1][i]; 00701 if (*verbose ==1 ) 00702 { 00703 sciprint("\nDash Style %d:<",(int)*value); 00704 for ( i =0 ; i < value[1]; i++) 00705 sciprint("%d ",(int)value[i+2]); 00706 sciprint(">\n"); 00707 } 00708 } 00709 }
Here is the call graph for this function:

to get information on absolute or relative mode
Definition at line 341 of file periPos.c.
References CoordModeOrigin, BCG::CurVectorStyle, FALSE, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00342 { 00343 if ( ScilabGCPos_is_initialized == FALSE ) { 00344 sciprint("xinit must be called before any action \r\n"); 00345 return; 00346 } 00347 00348 *narg = 1; 00349 *num = ScilabGCPos.CurVectorStyle ; 00350 if (*verbose == 1) 00351 { 00352 if (ScilabGCPos.CurVectorStyle == CoordModeOrigin) 00353 sciprint("\nTrace Absolu"); 00354 else 00355 sciprint("\nTrace Relatif"); 00356 } 00357 }
Here is the call graph for this function:

To get the value of the alufunction
Definition at line 439 of file periPos.c.
References AluStrucPos, BCG::CurDrawFunction, FALSE, info, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00440 { 00441 if ( ScilabGCPos_is_initialized == FALSE ) { 00442 sciprint("xinit must be called before any action \r\n"); 00443 return; 00444 } 00445 00446 *narg =1 ; 00447 *value = ScilabGCPos.CurDrawFunction ; 00448 if (*verbose ==1 ) 00449 { sciprint("\nThe Alufunction is %s -> <%s>\r\n", 00450 AluStrucPos[*value].name, 00451 AluStrucPos[*value].info);} 00452 }
Here is the call graph for this function:

Definition at line 1051 of file periPos.c.
References BCG::CurColorStatus, FALSE, BCG::NumBackground, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
01052 { 01053 *narg=1; 01054 01055 if ( ScilabGCPos_is_initialized == FALSE ) { 01056 sciprint("xinit must be called before any action \r\n"); 01057 return; 01058 } 01059 01060 if ( ScilabGCPos.CurColorStatus == 1 ) 01061 { 01062 *num = ScilabGCPos.NumBackground + 1; 01063 } 01064 else 01065 { 01066 *num = 1; 01067 } 01068 if (*verbose == 1) 01069 sciprint("\n Background : %d\r\n",*num); 01070 }
Here is the call graph for this function:

Get the boundaries of the current clip zone
Definition at line 289 of file periPos.c.
References BCG::ClipRegionSet, BCG::CurClipRegion, FALSE, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00290 { 00291 if ( ScilabGCPos_is_initialized == FALSE ) { 00292 sciprint("xinit must be called before any action \r\n"); 00293 return; 00294 } 00295 00296 x[0] = ScilabGCPos.ClipRegionSet; 00297 if ( x[0] == 1) 00298 { 00299 *narg = 5; 00300 x[1] =ScilabGCPos.CurClipRegion[0]; 00301 x[2] =ScilabGCPos.CurClipRegion[1]; 00302 x[3] =ScilabGCPos.CurClipRegion[2]; 00303 x[4] =ScilabGCPos.CurClipRegion[3]; 00304 } 00305 else *narg = 1; 00306 if (*verbose == 1) 00307 { 00308 if (ScilabGCPos.ClipRegionSet == 1) 00309 sciprint("\nThere's a Clip Region :x:%d,y:%d,w:%d,h:%d\r\n", 00310 ScilabGCPos.CurClipRegion[0], 00311 ScilabGCPos.CurClipRegion[1], 00312 ScilabGCPos.CurClipRegion[2], 00313 ScilabGCPos.CurClipRegion[3]); 00314 else 00315 sciprint("\nNo Clip Region"); 00316 } 00317 }
Here is the call graph for this function:

Definition at line 921 of file periPos.c.
References BCG::Blue, FALSE, BCG::Green, i, BCG::Numcolors, BCG::Red, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), and val.
00922 { 00923 int m; 00924 int i; 00925 *v3 = 0; 00926 00927 if ( ScilabGCPos_is_initialized == FALSE ) { 00928 sciprint("xinit must be called before any action \r\n"); 00929 *v3=1; 00930 return; 00931 } 00932 00933 m = ScilabGCPos.Numcolors; 00934 00935 for (i = 0; i < m; i++) { 00936 val[i] = (double)ScilabGCPos.Red[i]; 00937 val[i+m] = (double)ScilabGCPos.Green[i]; 00938 val[i+2*m] = (double)ScilabGCPos.Blue[i]; 00939 } 00940 00941 /* if (*v2 != 3 || *v1 < 0) { */ 00942 /* sciprint("Colormap must be a m x 3 array \n"); */ 00943 /* *v3 = 1; */ 00944 /* return; */ 00945 /* } */ 00946 /* m = *v1; */ 00947 /* C2F(setgccolormapPos)(&ScilabGCPos,m, a, v3); */ 00948 }
Here is the call graph for this function:

Definition at line 910 of file periPos.c.
References FALSE, BCG::Numcolors, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00911 { 00912 if ( ScilabGCPos_is_initialized == FALSE ) { 00913 sciprint("xinit must be called before any action \r\n"); 00914 *v3=1; 00915 return; 00916 } 00917 00918 *v2 = ScilabGCPos.Numcolors; 00919 }
Here is the call graph for this function:

Get the id number of the Current Graphic Window
Definition at line 240 of file periPos.c.
References BCG::CurWindow, FALSE, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00241 { 00242 if ( ScilabGCPos_is_initialized == FALSE ) { 00243 sciprint("xinit must be called before any action \r\n"); 00244 return; 00245 } 00246 00247 *narg =1 ; 00248 *intnum = ScilabGCPos.CurWindow ; 00249 if (*verbose == 1) 00250 sciprint("\nJust one graphic page at a time "); 00251 }
Here is the call graph for this function:

| void C2F() getFontMaxSizePos | ( | char * | str, | |
| integer * | sizeMin, | |||
| integer * | sizeMax, | |||
| integer * | v1, | |||
| integer * | v2, | |||
| integer * | v3, | |||
| integer * | v4, | |||
| double * | dx1, | |||
| double * | dx2, | |||
| double * | dx3, | |||
| double * | dx4 | |||
| ) |
get the minimal and maximal font size
Definition at line 2452 of file periPos.c.
References FONTMAXSIZE.
Referenced by xcall_in_word_set().
02453 { 02454 *sizeMin = 0 ; 02455 *sizeMax = FONTMAXSIZE ; 02456 }
Here is the caller graph for this function:

Definition at line 1088 of file periPos.c.
References BCG::CurColorStatus, FALSE, BCG::NumForeground, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
01089 { 01090 if ( ScilabGCPos_is_initialized == FALSE ) { 01091 sciprint("xinit must be called before any action \r\n"); 01092 return; 01093 } 01094 01095 *narg=1; 01096 if ( ScilabGCPos.CurColorStatus == 1 ) 01097 { 01098 *num = ScilabGCPos.NumForeground + 1; 01099 } 01100 else 01101 { 01102 *num = 1; 01103 } 01104 if (*verbose == 1) 01105 sciprint("\n Foreground : %d\r\n",*num); 01106 }
Here is the call graph for this function:

Definition at line 1127 of file periPos.c.
References BCG::CurColorStatus, FALSE, BCG::NumHidden3d, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
01128 { 01129 if ( ScilabGCPos_is_initialized == FALSE ) { 01130 sciprint("xinit must be called before any action \r\n"); 01131 return; 01132 } 01133 01134 *narg=1; 01135 if ( ScilabGCPos.CurColorStatus == 1 ) 01136 { 01137 *num = ScilabGCPos.NumHidden3d + 1; 01138 } 01139 else 01140 { 01141 *num = 1; 01142 } 01143 if (*verbose == 1) 01144 sciprint("\n Hidden3d : %d\r\n",*num); 01145 }
Here is the call graph for this function:

To get the id of the last pattern
Definition at line 552 of file periPos.c.
References FALSE, BCG::IDLastPattern, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00553 { 00554 if ( ScilabGCPos_is_initialized == FALSE ) { 00555 sciprint("xinit must be called before any action \r\n"); 00556 return; 00557 } 00558 00559 *num = ScilabGCPos.IDLastPattern +1 ; 00560 if (*verbose==1) 00561 sciprint("\n Id of White Pattern %d\r\n",(int)*num); 00562 *narg=1; 00563 }
Here is the call graph for this function:

To get the id of the current pattern
Definition at line 527 of file periPos.c.
References BCG::CurColor, BCG::CurColorStatus, BCG::CurPattern, FALSE, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
Referenced by drawrectanglesPos(), drawsegmentsPos(), fillarcPos(), fillarcsPos(), fillpolylinePos(), fillpolylinesPos(), fillrectanglePos(), and get_dash_and_color_Pos().
00528 { 00529 if ( ScilabGCPos_is_initialized == FALSE ) { 00530 sciprint("xinit must be called before any action \r\n"); 00531 return; 00532 } 00533 00534 *narg=1; 00535 if ( ScilabGCPos.CurColorStatus ==1) 00536 { 00537 *num = ScilabGCPos.CurColor +1 ; 00538 if (*verbose == 1) 00539 sciprint("\n Color : %d\r\n",*num); 00540 } 00541 else 00542 { 00543 *num = ScilabGCPos.CurPattern +1 ; 00544 if (*verbose == 1) 00545 sciprint("\n Pattern : %d\r\n",*num); 00546 } 00547 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() getscilabVersionPos | ( | integer * | verbose, | |
| integer * | vers, | |||
| integer * | narg, | |||
| double * | dummy | |||
| ) |
to get the thicknes value
Definition at line 472 of file periPos.c.
References BCG::CurLineWidth, FALSE, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00473 { 00474 if ( ScilabGCPos_is_initialized == FALSE ) { 00475 sciprint("xinit must be called before any action \r\n"); 00476 return; 00477 } 00478 00479 *narg =1 ; 00480 *value = ScilabGCPos.CurLineWidth ; 00481 if (*verbose ==1 ) 00482 sciprint("\nLine Width:%d\r\n", 00483 ScilabGCPos.CurLineWidth ) ; 00484 }
Here is the call graph for this function:

Definition at line 806 of file periPos.c.
References BCG::CurColorStatus, FALSE, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00807 { 00808 00809 if ( ScilabGCPos_is_initialized == FALSE ) { 00810 sciprint("xinit must be called before any action \r\n"); 00811 return; 00812 } 00813 00814 *num = ScilabGCPos.CurColorStatus; 00815 if (*verbose == 1) 00816 sciprint("\n Use color %d\r\n",(int)*num); 00817 *narg=1; 00818 }
Here is the call graph for this function:

Definition at line 210 of file periPos.c.
References prec_fact, and sciprint().
Referenced by FileInit(), and FileInitFromScreenPos().
00211 { 00212 *narg = 2; 00213 x[0]= def_width*prec_fact; 00214 x[1]= def_height*prec_fact; 00215 if (*verbose == 1) 00216 sciprint("\n CWindow dim :%d,%d\r\n",(int)x[0],(int)x[1]); 00217 }
Here is the call graph for this function:

Here is the caller graph for this function:

to get the window upper-left pointeger coordinates
Definition at line 175 of file periPos.c.
References sciprint().
00176 { 00177 *narg = 2; 00178 x[0]= x[1]=0; 00179 if (*verbose == 1) 00180 sciprint("\n CWindow position :%d,%d\r\n",(int)x[0],(int)x[1]); 00181 }
Here is the call graph for this function:

| void C2F() idfromnamePos | ( | char * | name1, | |
| integer * | num | |||
| ) |
| void C2F() initgraphicfromscreenPos | ( | char * | string, | |
| integer * | v2, | |||
| integer * | v3, | |||
| integer * | v4, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 2532 of file periPos.c.
References C2F, BCG::CurWindow, FileInitFromScreenPos(), loadfamilyPos(), PD0, PI0, and ScilabGCPos.
Referenced by xcall_in_word_set().
02533 { 02534 char string1[256]; 02535 static integer EntryCounter = 0; 02536 integer fnum; 02537 02538 *v3 = 0; 02539 if (EntryCounter >= 1) C2F(xendgraphicPos)(); 02540 strncpy(string1,string,256); 02541 02542 /* Not so useful 02543 sprintf(string2,"%d",(int)EntryCounter); 02544 strcat(string1,string2); */ 02545 file=fopen(string1,"w"); 02546 if (file == 0) 02547 { 02548 /*sciprint("Can't open file %s, I'll use stdout\r\n",string1);*/ 02549 file =stdout; 02550 *v3 = 1; 02551 return; 02552 } 02553 if (EntryCounter == 0) 02554 { 02555 fnum=0; C2F(loadfamilyPos)("Courier",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02556 fnum=1; C2F(loadfamilyPos)("Symbol",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02557 fnum=2; C2F(loadfamilyPos)("Times-Roman",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02558 fnum=3; C2F(loadfamilyPos)("Times-Italic",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02559 fnum=4; C2F(loadfamilyPos)("Times-Bold",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02560 fnum=5; C2F(loadfamilyPos)("Times-BoldItalic",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02561 fnum=6; C2F(loadfamilyPos)("Helvetica",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02562 fnum=7; C2F(loadfamilyPos)("Helvetica-Oblique",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02563 fnum=8; C2F(loadfamilyPos)("Helvetica-Bold",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02564 fnum=9; C2F(loadfamilyPos)("Helvetica-BoldOblique",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02565 02566 } 02567 FileInitFromScreenPos(); 02568 ScilabGCPos.CurWindow =EntryCounter; 02569 EntryCounter =EntryCounter +1; 02570 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() initgraphicPos | ( | char * | string, | |
| integer * | v2, | |||
| integer * | v3, | |||
| integer * | v4, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 1976 of file periPos.c.
References C2F, BCG::CurWindow, file, FileInit(), loadfamilyPos(), PD0, PI0, and ScilabGCPos.
Referenced by xcall_in_word_set().
01977 { 01978 char string1[256]; 01979 static integer EntryCounter = 0; 01980 integer fnum; 01981 01982 *v3 = 0; 01983 if (EntryCounter >= 1) C2F(xendgraphicPos)(); 01984 strncpy(string1,string,256); 01985 01986 /* Not so useful 01987 sprintf(string2,"%d",(int)EntryCounter); 01988 strcat(string1,string2); */ 01989 file=fopen(string1,"w"); 01990 if (file == 0) 01991 { 01992 /*sciprint("Can't open file %s, I'll use stdout\r\n",string1);*/ 01993 file =stdout; 01994 *v3 = 1; 01995 return; 01996 } 01997 if (EntryCounter == 0) 01998 { 01999 fnum=0; C2F(loadfamilyPos)("Courier",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02000 fnum=1; C2F(loadfamilyPos)("Symbol",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02001 fnum=2; C2F(loadfamilyPos)("Times-Roman",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02002 fnum=3; C2F(loadfamilyPos)("Times-Italic",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02003 fnum=4; C2F(loadfamilyPos)("Times-Bold",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02004 fnum=5; C2F(loadfamilyPos)("Times-BoldItalic",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02005 fnum=6; C2F(loadfamilyPos)("Helvetica",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02006 fnum=7; C2F(loadfamilyPos)("Helvetica-Oblique",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02007 fnum=8; C2F(loadfamilyPos)("Helvetica-Bold",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02008 fnum=9; C2F(loadfamilyPos)("Helvetica-BoldOblique",&fnum,PI0,PI0,PI0,PI0,PI0,PD0,PD0,PD0,PD0); 02009 02010 } 02011 FileInit(); 02012 ScilabGCPos.CurWindow =EntryCounter; 02013 EntryCounter =EntryCounter +1; 02014 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() loadfamilyPos | ( | char * | name, | |
| integer * | j, | |||
| integer * | v3, | |||
| integer * | v4, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 2464 of file periPos.c.
References C2F, FontInfoTabPos, FONTMAXSIZE, SciFontInfo::ok, PosQueryFont(), and sciprint().
Referenced by initgraphicfromscreenPos(), initgraphicPos(), and xcall_in_word_set().
02465 { 02466 integer i ; 02467 for ( i = 0; i < FONTMAXSIZE ; i++) 02468 { 02469 FontsListPos[*j][i] = C2F(PosQueryFont)(name); 02470 } 02471 if (FontsListPos[*j][0] == 0 ) 02472 sciprint("\n unknown font family : %s \r\n",name); 02473 else 02474 {FontInfoTabPos[*j].ok = 1; 02475 strcpy(FontInfoTabPos[*j].fname,name) ;} 02476 }
Here is the call graph for this function:

Here is the caller graph for this function:

| static int C2F() PosQueryFont | ( | char * | name | ) | [static] |
Definition at line 1564 of file periPos.c.
References font, and FontArray.
Referenced by ascentPos().
01565 { 01566 /* correction pour centrer verticalement une chaine postscript il me semble ? 01567 * a partir de la hauteur de la boite, h (= ascender max - descender max) 01568 * on calcule Dy = h/2 pour centrer verticalement mais ceci n'est pas 01569 * - - tres precis => il faut une correction (et descender/2 a l'air de 01570 * | | fonctionner...) 01571 * | | ascender max 01572 * | h | 01573 * | - 01574 * | | descender max (valeur negative) 01575 * - - 01576 * 01577 */ 01578 PosFont *font=FontArray[id_font]; 01579 int nb_pts = Font_Size_in_pts[id_size]; 01580 01581 return ( font->des*0.5*0.001*nb_pts ); 01582 }
Here is the caller graph for this function:

| static void PosStrBox | ( | char * | str, | |
| integer | id_font, | |||
| integer | id_size, | |||
| double * | w, | |||
| double * | h | |||
| ) | [static] |
Definition at line 1528 of file periPos.c.
References font, FontArray, and l.
Referenced by boundingboxPos().
01530 { 01531 /* 01532 * PURPOSE : computes the width w and the height h of a string in postscript 01533 * 01534 * NOTE : the computed h is for most cases too large because I use the 01535 * max ascender and descender of the font (the previus datas 01536 * font tables contains only the width of all the printable 01537 * ascii characters). 01538 */ 01539 01540 PosFont *font=FontArray[id_font]; 01541 int nb_pts = Font_Size_in_pts[id_size]; 01542 01543 /* computes w */ 01544 if ( font->fixed_pitch ) 01545 *w = strlen(str) * font->mean_char_width*0.001*nb_pts; 01546 else 01547 { 01548 int l=0, c = *str; 01549 while (c != '\0') 01550 { 01551 if (32 <= c && c <= 126) 01552 l += font->char_width[c-32]; 01553 else 01554 l += font->mean_char_width; 01555 c = *(++str); 01556 } 01557 *w = l*0.001*nb_pts; 01558 } 01559 01560 /* computes h */ 01561 *h = (font->asc - font->des)*0.001*nb_pts; 01562 }
Here is the caller graph for this function:

| void C2F() queryfamilyPos | ( | char * | name, | |
| integer * | j, | |||
| integer * | v3, | |||
| integer * | v4, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 2487 of file periPos.c.
References FontInfoTabPos, and FONTNUMBER.
Referenced by xcall_in_word_set().
02488 { 02489 integer i ; 02490 name[0]='\0'; 02491 for (i=0;i<FONTNUMBER;i++) { 02492 strcat(name,FontInfoTabPos[i].fname); 02493 v3[i]=strlen(FontInfoTabPos[i].fname); 02494 } 02495 *j=FONTNUMBER; 02496 }
Here is the caller graph for this function:

| void C2F() scilabgcgetPos | ( | char * | str, | |
| integer * | verbose, | |||
| integer * | x1, | |||
| integer * | x2, | |||
| integer * | x3, | |||
| integer * | x4, | |||
| integer * | x5, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 1242 of file periPos.c.
References C2F, L, and ScilabGCGetorSetPos().
Referenced by xcall_in_word_set().
01243 { 01244 int x6=0; 01245 C2F(ScilabGCGetorSetPos)(str,(integer)1L,verbose,x1,x2,x3,x4,x5,&x6,dv1); 01246 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() scilabgcsetPos | ( | char * | str, | |
| integer * | x1, | |||
| integer * | x2, | |||
| integer * | x3, | |||
| integer * | x4, | |||
| integer * | x5, | |||
| integer * | x6, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 1248 of file periPos.c.
References C2F, L, and ScilabGCGetorSetPos().
Referenced by xcall_in_word_set().
01249 { 01250 integer verbose ; 01251 verbose = 0 ; 01252 C2F(ScilabGCGetorSetPos)(str,(integer)0L,&verbose,x1,x2,x3,x4,x5,x6,dv1);}
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() set_cPos | ( | integer | i | ) |
Referenced by set_dash_or_color_Pos(), and setpatternPos().
Here is the caller graph for this function:

Definition at line 618 of file periPos.c.
References C2F, FALSE, ScilabGCPos_is_initialized, sciprint(), setdashPos(), and setpatternPos().
Referenced by drawarcsPos(), drawarrowsPos(), and drawpolylinesPos().
00619 { 00620 if ( ScilabGCPos_is_initialized == FALSE ) { 00621 sciprint("xinit must be called before any action \r\n"); 00622 return; 00623 } 00624 00625 C2F(setdashPos)(value, v2, v3, v4); 00626 C2F(setpatternPos)(value+6, v2, v3, v4); 00627 }
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 579 of file periPos.c.
References C2F, BCG::CurColor, BCG::CurColorStatus, BCG::CurDashStyle, FALSE, i, Max, MAXDASH, Min, BCG::Numcolors, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), set_cPos(), and setdashstylePos().
00580 { 00581 static integer l2=4,l3 ; 00582 00583 if ( ScilabGCPos_is_initialized == FALSE ) { 00584 sciprint("xinit must be called before any action \r\n"); 00585 return; 00586 } 00587 00588 if ( ScilabGCPos.CurColorStatus == 1) 00589 { 00590 int i; 00591 i= Max(0,Min(*value-1,ScilabGCPos.Numcolors+1)); 00592 ScilabGCPos.CurColor =i; 00593 C2F(set_cPos)(i); 00594 } 00595 else 00596 { 00597 l3 = Max(0,Min(MAXDASH - 1,*value - 1)); 00598 C2F(setdashstylePos)(&l3,DashTabPos[l3],&l2); 00599 ScilabGCPos.CurDashStyle = l3; 00600 } 00601 }
Here is the call graph for this function:

Definition at line 631 of file periPos.c.
References C2F, BCG::CurColorStatus, BCG::CurDashStyle, FALSE, j, PI0, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), setdashPos(), and setpatternPos().
Referenced by drawarcsPos(), drawarrowsPos(), and drawpolylinesPos().
00632 { 00633 integer j; 00634 00635 if ( ScilabGCPos_is_initialized == FALSE ) { 00636 sciprint("xinit must be called before any action \r\n"); 00637 return; 00638 } 00639 00640 if (ScilabGCPos.CurColorStatus == 0) 00641 C2F(setdashPos)(value,PI0,PI0,PI0); 00642 else { 00643 j= ScilabGCPos.CurDashStyle + 1; 00644 C2F(setdashPos)(&j,PI0,PI0,PI0); 00645 C2F(setpatternPos)(value,PI0,PI0,PI0); 00646 } 00647 }
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 326 of file periPos.c.
References CoordModeOrigin, CoordModePrevious, BCG::CurVectorStyle, FALSE, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00327 { 00328 if ( ScilabGCPos_is_initialized == FALSE ) { 00329 sciprint("xinit must be called before any action \r\n"); 00330 return; 00331 } 00332 00333 if (*num == CoordModeOrigin ) 00334 ScilabGCPos.CurVectorStyle = CoordModeOrigin; 00335 else 00336 ScilabGCPos.CurVectorStyle = CoordModePrevious ; 00337 }
Here is the call graph for this function:

Definition at line 420 of file periPos.c.
References AluStrucPos, BCG::CurDrawFunction, FALSE, alinfo::id, Max, Min, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), and value.
Referenced by setgccolormapPos().
00421 { 00422 integer value; 00423 00424 if ( ScilabGCPos_is_initialized == FALSE ) { 00425 sciprint("xinit must be called before any action \r\n"); 00426 return; 00427 } 00428 00429 value=AluStrucPos[Min(15,Max(0,*num))].id; 00430 if ( value != -1) 00431 { 00432 ScilabGCPos.CurDrawFunction = value; 00433 /* to be done */ 00434 } 00435 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() setalufunctionPos | ( | char * | string | ) |
Not in Postscript
Definition at line 363 of file periPos.c.
References C2F, BCG::CurDrawFunction, FALSE, file, FPRINTF, idfromnamePos(), ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), string, and value.
Referenced by InitScilabGCPos().
00364 { 00365 integer value; 00366 00367 if ( ScilabGCPos_is_initialized == FALSE ) { 00368 sciprint("xinit must be called before any action \r\n"); 00369 return; 00370 } 00371 00372 C2F(idfromnamePos)(string,&value); 00373 if ( value != -1) 00374 {ScilabGCPos.CurDrawFunction = value; 00375 FPRINTF((file,"\n%% %d setalufunction",(int)value)); 00376 } 00377 }
Here is the call graph for this function:

Here is the caller graph for this function:

set and get the number of the background or foreground
Referenced by InitScilabGCPos(), and setgccolormapPos().
Here is the caller graph for this function:

Set a clip zone (rectangle )
Definition at line 255 of file periPos.c.
References BCG::ClipRegionSet, BCG::CurClipRegion, FALSE, file, FPRINTF, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00256 { 00257 if ( ScilabGCPos_is_initialized == FALSE ) { 00258 sciprint("xinit must be called before any action \r\n"); 00259 return; 00260 } 00261 00262 ScilabGCPos.ClipRegionSet = 1; 00263 ScilabGCPos.CurClipRegion[0]= *x; 00264 ScilabGCPos.CurClipRegion[1]= *y; 00265 ScilabGCPos.CurClipRegion[2]= *w; 00266 ScilabGCPos.CurClipRegion[3]= *h; 00267 FPRINTF((file,"\n%d %d %d %d setclipzone",(int)*x,(int)*y,(int)*w,(int)*h)); 00268 }
Here is the call graph for this function:

Definition at line 973 of file periPos.c.
References C2F, and setgccolormapPos().
00974 { 00975 00976 C2F(setgccolormapPos)(Xgc,*m, a, v3); 00977 }
Here is the call graph for this function:

| void C2F() setcolormapPos | ( | integer * | v1, | |
| integer * | v2, | |||
| integer * | v3, | |||
| integer * | v4, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| double * | a | |||
| ) |
Definition at line 950 of file periPos.c.
References C2F, FALSE, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), and setgccolormapPos().
00951 { 00952 int m; 00953 00954 *v3 = 0; 00955 00956 if ( ScilabGCPos_is_initialized == FALSE ) { 00957 sciprint("xinit must be called before any action \r\n"); 00958 *v3=1; 00959 return; 00960 } 00961 00962 if (*v2 != 3 || *v1 < 0) { 00963 sciprint("Colormap must be a m x 3 array \n"); 00964 *v3 = 1; 00965 return; 00966 } 00967 m = *v1; 00968 C2F(setgccolormapPos)(&ScilabGCPos,m, a, v3); 00969 }
Here is the call graph for this function:

Select a graphic Window : Empty for Postscript
Definition at line 228 of file periPos.c.
References BCG::CurWindow, FALSE, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
00229 { 00230 if ( ScilabGCPos_is_initialized == FALSE ) { 00231 sciprint("xinit must be called before any action \r\n"); 00232 return; 00233 } 00234 00235 ScilabGCPos.CurWindow = *intnum; 00236 }
Here is the call graph for this function:

Definition at line 604 of file periPos.c.
References C2F, BCG::CurDashStyle, FALSE, Max, MAXDASH, Min, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), and setdashstylePos().
Referenced by InitScilabGCPos(), set_dash_and_color_Pos(), set_line_style_Pos(), and usecolorPos().
00605 { 00606 static integer l2=4,l3 ; 00607 00608 if ( ScilabGCPos_is_initialized == FALSE ) { 00609 sciprint("xinit must be called before any action \r\n"); 00610 return; 00611 } 00612 00613 l3 = Max(0,Min(MAXDASH - 1,*value - 1)); 00614 C2F(setdashstylePos)(&l3,DashTabPos[l3],&l2); 00615 ScilabGCPos.CurDashStyle = l3; 00616 }
Here is the call graph for this function:

Here is the caller graph for this function:

xx[3]={5,3,7} and *n == 3 means : 5white 3 void 7 white
Referenced by set_dash_or_color_Pos(), and setdashPos().
Here is the caller graph for this function:

set and get the number of the background or foreground
Referenced by InitScilabGCPos(), and setgccolormapPos().
Here is the caller graph for this function:

Definition at line 843 of file periPos.c.
References BCG::Blue, C2F, FALSE, file, FPRINTF, FREE, BCG::Green, i, BCG::IDLastPattern, MALLOC, BCG::NumBackground, BCG::Numcolors, BCG::NumForeground, PI0, BCG::Red, ScilabGCPos_is_initialized, sciprint(), setalufunction1Pos(), setbackgroundPos(), setforegroundPos(), setpatternPos(), usecolorPos(), and WriteColorRGB().
Referenced by setcolormapgPos(), and setcolormapPos().
00844 { 00845 int i; 00846 int mm; 00847 00848 if ( ScilabGCPos_is_initialized == FALSE ) { 00849 sciprint("xinit must be called before any action \r\n"); 00850 return; 00851 } 00852 00853 /* Checking RGB values */ 00854 for (i = 0; i < m; i++) { 00855 if (a[i] < 0 || a[i] > 1 || a[i+m] < 0 || a[i+m] > 1 || 00856 a[i+2*m] < 0 || a[i+2*m]> 1) { 00857 sciprint("RGB values must be between 0 and 1\n"); 00858 *v3 = 1; 00859 return; 00860 } 00861 } 00862 Xgc->Numcolors = m; 00863 Xgc->IDLastPattern = m - 1; 00864 Xgc->NumForeground = m; 00865 Xgc->NumBackground = m + 1; 00866 FPRINTF((file,"\n/WhiteLev %d def",Xgc->IDLastPattern)); 00867 WriteColorRGB("R",a,0); 00868 WriteColorRGB("G",a,1); 00869 WriteColorRGB("B",a,2); 00870 C2F(usecolorPos)((i=1,&i) ,PI0,PI0,PI0); 00871 C2F(setalufunction1Pos)((i=3,&i),PI0,PI0,PI0); 00872 C2F(setpatternPos)((i=Xgc->NumForeground+1,&i),PI0,PI0,PI0); 00873 C2F(setforegroundPos)((i=Xgc->NumForeground+1,&i),PI0,PI0,PI0); 00874 C2F(setbackgroundPos)((i=Xgc->NumForeground+2,&i),PI0,PI0,PI0); 00875 00876 /* -------------------------------------------------------- */ 00877 /* store the colormap for the get command too */ 00878 /* F.Leray 04.10.05 */ 00879 FREE(Xgc->Red); 00880 FREE(Xgc->Green); 00881 FREE(Xgc->Blue); 00882 00883 /* don't forget black and white */ 00884 mm = m; 00885 if (!(Xgc->Red = (float *) MALLOC(mm*sizeof(float)))) { 00886 sciprint("XgcAllocColors: unable to alloc\n"); 00887 return; 00888 } 00889 if (!(Xgc->Green = (float *) MALLOC(mm*sizeof(float)))) { 00890 sciprint("XgcAllocColors: unable to alloc\n"); 00891 FREE(Xgc->Red); 00892 return; 00893 } 00894 if (!(Xgc->Blue = (float *) MALLOC(mm*sizeof(float)))) { 00895 sciprint("XgcAllocColors: unable to alloc\n"); 00896 FREE(Xgc->Red); 00897 FREE(Xgc->Green); 00898 return; 00899 } 00900 00901 00902 for(i=0;i<m;i++){ 00903 Xgc->Red[i] = (float)a[i]; 00904 Xgc->Green[i] = (float)a[i+m]; 00905 Xgc->Blue[i] = (float)a[i+2*m]; 00906 } 00907 /* -------------------------------------------------------- */ 00908 }
Here is the call graph for this function:

Here is the caller graph for this function:

set and get the number of the hidden3d color
Definition at line 1112 of file periPos.c.
References BCG::CurColorStatus, FALSE, Max, Min, BCG::Numcolors, BCG::NumHidden3d, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
Referenced by InitScilabGCPos().
01113 { 01114 if ( ScilabGCPos_is_initialized == FALSE ) { 01115 sciprint("xinit must be called before any action \r\n"); 01116 return; 01117 } 01118 01119 if (ScilabGCPos.CurColorStatus == 1) 01120 { 01121 /* es: Max(0,... -> Max(-1,... */ 01122 /* S Mottelet: Max(-1,... -> Max(-2,... to take into account the value -1 */ 01123 ScilabGCPos.NumHidden3d = Max(-2,Min(*num - 1,ScilabGCPos.Numcolors + 1)); 01124 } 01125 }
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 494 of file periPos.c.
References C2F, BCG::CurColor, BCG::CurColorStatus, BCG::CurPattern, FALSE, file, FPRINTF, GREYNUMBER, i, Max, Min, BCG::Numcolors, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), and set_cPos().
Referenced by drawrectanglesPos(), fillarcsPos(), fillpolylinesPos(), InitScilabGCPos(), set_dash_and_color_Pos(), set_line_style_Pos(), setgccolormapPos(), and usecolorPos().
00495 { 00496 integer i ; 00497 00498 if ( ScilabGCPos_is_initialized == FALSE ) { 00499 sciprint("xinit must be called before any action \r\n"); 00500 return; 00501 } 00502 00503 if ( ScilabGCPos.CurColorStatus ==1) 00504 { 00505 i= Max(0,Min(*num-1,ScilabGCPos.Numcolors+1)); 00506 ScilabGCPos.CurColor = i ; 00507 C2F(set_cPos)(i); 00508 } 00509 else 00510 { 00511 /* used when printing from color to b&white color after GREYNUMBER 00512 are translated to black */ 00513 if ( *num-1 > GREYNUMBER -1 ) 00514 i=0; 00515 else 00516 i= Max(0,Min(*num-1,GREYNUMBER-1)); 00517 ScilabGCPos.CurPattern = i; 00518 if (i ==0) 00519 FPRINTF((file,"\nfillsolid")); 00520 else 00521 FPRINTF((file,"\n%d Setgray",(int)i)); 00522 } 00523 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() setscilabFigurePos | ( | integer * | v1, | |
| integer * | v2, | |||
| integer * | v3, | |||
| integer * | v4, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| double * | figure | |||
| ) |
Definition at line 459 of file periPos.c.
References BCG::CurLineWidth, FALSE, file, FPRINTF, Max, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), and Thick_prec.
Referenced by InitScilabGCPos().
00460 { 00461 if ( ScilabGCPos_is_initialized == FALSE ) { 00462 sciprint("xinit must be called before any action \r\n"); 00463 return; 00464 } 00465 00466 ScilabGCPos.CurLineWidth =Max(0, *value); 00467 FPRINTF((file,"\n%d Thickness",(int)Max(0,*value*Thick_prec))); 00468 }
Here is the call graph for this function:

Here is the caller graph for this function:

unset clip zone
Definition at line 272 of file periPos.c.
References BCG::ClipRegionSet, BCG::CurClipRegion, FALSE, file, FPRINTF, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
Referenced by InitScilabGCPos().
00273 { 00274 if ( ScilabGCPos_is_initialized == FALSE ) { 00275 sciprint("xinit must be called before any action \r\n"); 00276 return; 00277 } 00278 00279 ScilabGCPos.ClipRegionSet = 0; 00280 ScilabGCPos.CurClipRegion[0]= -1; 00281 ScilabGCPos.CurClipRegion[1]= -1; 00282 ScilabGCPos.CurClipRegion[2]= 200000; 00283 ScilabGCPos.CurClipRegion[3]= 200000; 00284 FPRINTF((file,"\n%d %d %d %d setclipzone",-1,-1,200000,200000)); 00285 }
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 752 of file periPos.c.
References C2F, BCG::CurColor, BCG::CurColorStatus, BCG::CurDashStyle, BCG::CurPattern, FALSE, file, FPRINTF, GREYNUMBER, i, BCG::IDLastPattern, Max, Min, BCG::Numcolors, PI0, ScilabGCPos, ScilabGCPos_is_initialized, sciprint(), setdashPos(), and setpatternPos().
Referenced by InitScilabGCPos(), and setgccolormapPos().
00753 { 00754 integer i; 00755 00756 if ( ScilabGCPos_is_initialized == FALSE ) { 00757 sciprint("xinit must be called before any action \r\n"); 00758 return; 00759 } 00760 00761 i = Min(Max(*num,0),1); 00762 FPRINTF((file,"\n%%--use color %d ",i)); 00763 if ( ScilabGCPos.CurColorStatus != (int)i) 00764 { 00765 if (ScilabGCPos.CurColorStatus == 1) 00766 { 00767 /* je passe de Couleur a n&b */ 00768 /* remise des couleurs a vide */ 00769 ScilabGCPos.CurColorStatus = 1; 00770 C2F(setpatternPos)((i=1,&i),PI0,PI0,PI0); 00771 /* passage en n&b */ 00772 ScilabGCPos.CurColorStatus = 0; 00773 i= ScilabGCPos.CurPattern+1; 00774 C2F(setpatternPos)(&i,PI0,PI0,PI0); 00775 i= ScilabGCPos.CurDashStyle+1; 00776 C2F(setdashPos)(&i,PI0,PI0,PI0); 00777 ScilabGCPos.IDLastPattern = GREYNUMBER - 1; 00778 FPRINTF((file,"\n/WhiteLev %d def",ScilabGCPos.IDLastPattern)); 00779 FPRINTF((file,"\n/Setgray { WhiteLev div setgray } def ")); 00780 FPRINTF((file,"\n/Setcolor { WhiteLev div setgray } def ")); 00781 FPRINTF((file,"\n/usecolor 0 def ")); 00782 } 00783 else 00784 { 00785 /* je passe en couleur */ 00786 /* remise a zero des patterns et dash */ 00787 /* remise des couleurs a vide */ 00788 ScilabGCPos.CurColorStatus = 0; 00789 C2F(setpatternPos)((i=1,&i),PI0,PI0,PI0); 00790 C2F(setdashPos)((i=1,&i),PI0,PI0,PI0); 00791 /* passage en couleur */ 00792 ScilabGCPos.CurColorStatus = 1; 00793 i= ScilabGCPos.CurColor+1; 00794 C2F(setpatternPos)(&i,PI0,PI0,PI0); 00795 ScilabGCPos.IDLastPattern = ScilabGCPos.Numcolors - 1; 00796 FPRINTF((file,"\n/WhiteLev %d def",ScilabGCPos.IDLastPattern)); 00797 FPRINTF((file,"\n/Setgray {/i exch def ColorR i get ColorG i get ColorB i get setrgbcolor } def ")); 00798 FPRINTF((file,"\n/Setcolor {/i exch def ColorR i get ColorG i get ColorB i get setrgbcolor } def ")); 00799 FPRINTF((file,"\n/usecolor 1 def ")); 00800 } 00801 } 00802 FPRINTF((file,"\n%%--end use color %d ",ScilabGCPos.CurColorStatus)); 00803 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void C2F() Write2VectPos | ( | integer * | vx, | |
| integer * | vy, | |||
| integer | from, | |||
| integer | n, | |||
| char * | string, | |||
| integer | flag, | |||
| integer | fv | |||
| ) |
| static void WriteColorRGB | ( | char * | str, | |
| double * | tab, | |||
| int | ind | |||
| ) | [static] |
Definition at line 981 of file periPos.c.
References FALSE, file, FPRINTF, i, BCG::Numcolors, ScilabGCPos, ScilabGCPos_is_initialized, and sciprint().
Referenced by setgccolormapPos().
00982 { 00983 /* RGB are the columns of tab */ 00984 int i; 00985 00986 if ( ScilabGCPos_is_initialized == FALSE ) { 00987 sciprint("xinit must be called before any action \r\n"); 00988 return; 00989 } 00990 00991 FPRINTF((file,"\n/Color%s [",str)); 00992 for ( i=0; i < ScilabGCPos.Numcolors; i++) 00993 { 00994 FPRINTF((file,"%f ",(float) tab[i+ ScilabGCPos.Numcolors*ind])); 00995 if ( (i % 10 ) == 0 ) FPRINTF((file,"\n")); 00996 } 00997 FPRINTF((file,"0.0 1.0] def")); 00998 }
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 1014 of file periPos.c.
References file, FPRINTF, i, BCG::Numcolors, and ScilabGCPos.
Referenced by ColorInit().
01015 { 01016 int i; 01017 01018 FPRINTF((file,"\n/Color%s [",str)); 01019 for ( i=0; i < ScilabGCPos.Numcolors; i++) 01020 { 01021 FPRINTF((file,"%f ",(float) tab[3*i+ind]/255.0)); 01022 if ( (i % 10 ) == 0 ) FPRINTF((file,"\n")); 01023 } 01024 FPRINTF((file,"0.0 1.0] def")); 01025 }
Here is the caller graph for this function:

| void C2F() WriteGeneric1Pos | ( | char * | string, | |
| integer | nobjpos, | |||
| integer | objbeg, | |||
| integer | sizeobj, | |||
| integer * | vx, | |||
| integer * | vy, | |||
| integer | flag, | |||
| integer * | fvect | |||
| ) |
| void C2F() WriteGenericPos | ( | char * | string, | |
| integer | nobj, | |||
| integer | sizeobj, | |||
| integer * | vx, | |||
| integer * | vy, | |||
| integer | sizev, | |||
| integer | flag, | |||
| integer * | fvect | |||
| ) |
Referenced by drawarrowsPos(), drawrectanglesPos(), drawsegmentsPos(), fillarcsPos(), and fillpolylinesPos().
Here is the caller graph for this function:

| void C2F() xclick_anyPos | ( | char * | str, | |
| integer * | ibutton, | |||
| integer * | xx1, | |||
| integer * | yy1, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 148 of file periPos.c.
Referenced by xcall_in_word_set().
Here is the caller graph for this function:

| void C2F() xclickPos | ( | char * | str, | |
| integer * | ibutton, | |||
| integer * | xx1, | |||
| integer * | yy1, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Wait for mouse click in graphic window : Empty here
Definition at line 145 of file periPos.c.
Referenced by xcall_in_word_set().
Here is the caller graph for this function:

| void C2F() xendgraphicPos | ( | void | ) |
End of graphic (close the file)
Definition at line 115 of file periPos.c.
References FALSE, file, FPRINTF, and ScilabGCPos_is_initialized.
00116 { 00117 if (file != stdout && file != (FILE*) 0) { 00118 FPRINTF((file,"\n%%Latex:\\end{picture}")); 00119 FPRINTF((file,"\n showpage\n")); 00120 FPRINTF((file,"\n end saved restore \n")); 00121 fclose(file); 00122 file=stdout;} 00123 ScilabGCPos_is_initialized = FALSE; 00124 }
| void C2F() xendPos | ( | char * | v1, | |
| integer * | v2, | |||
| integer * | v3, | |||
| integer * | v4, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 126 of file periPos.c.
References C2F.
Referenced by xcall_in_word_set().
00127 { 00128 C2F(xendgraphicPos)(); 00129 }
Here is the caller graph for this function:

To get the values id and size of the current font
Referenced by ascentPos(), and boundingboxPos().
Here is the caller graph for this function:

To get the current mark id
Referenced by drawpolylinesPos().
Here is the caller graph for this function:

| void C2F() xgetmousePos | ( | char * | str, | |
| integer * | ibutton, | |||
| integer * | xx1, | |||
| integer * | yy1, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
Definition at line 151 of file periPos.c.
Referenced by xcall_in_word_set().
Here is the caller graph for this function:

| void C2F() xselgraphicPos | ( | char * | v1, | |
| integer * | v2, | |||
| integer * | v3, | |||
| integer * | v4, | |||
| integer * | v5, | |||
| integer * | v6, | |||
| integer * | v7, | |||
| double * | dv1, | |||
| double * | dv2, | |||
| double * | dv3, | |||
| double * | dv4 | |||
| ) |
To select the graphic Window
Definition at line 110 of file periPos.c.
Referenced by xcall_in_word_set().
Here is the caller graph for this function:

To set the current mark : using the symbol font of adobe
Referenced by drawpolylinesPos(), and InitScilabGCPos().
Here is the caller graph for this function:

| struct alinfo AluStrucPos[] |
All the possibilities : Read The X11 manual to get more informations
Referenced by getalufunctionPos(), and setalufunction1Pos().
integer DashTabPos[MAXDASH][4] [static] |
integer def_height = 424 [static] |
int Font_Size_in_pts[NB_MAX_SIZES] = {8, 10, 12, 14, 18, 24} [static] |
Initial value:
{&Courier, &Symbol,
&TimesR, &TimesI, &TimesB, &TimesBI,
&Helvetica, &HelveticaO, &HelveticaB, &HelveticaBO}
Definition at line 1520 of file periPos.c.
Referenced by PosStrAsc(), and PosStrBox().
| struct SciFontInfo FontInfoTabPos[FONTNUMBER] |
Referenced by loadfamilyPos(), and queryfamilyPos().
| integer FontsListPos[FONTNUMBER][FONTMAXSIZE] |
Initial value:
{ "Helvetica",
775,
-220,
526,
0,
WidthHelvetica }
PosFont HelveticaB [static] |
Initial value:
{ "Helvetica-Bold",
775,
-217,
551,
0,
WidthHelveticaB }
PosFont HelveticaBO [static] |
Initial value:
{ "Helvetica-BoldOblique",
775,
-217,
551,
0,
WidthHelveticaBO }
PosFont HelveticaO [static] |
Initial value:
{ "Helvetica-Oblique",
775,
-220,
526,
0,
WidthHelveticaO }
| struct BCG ScilabGCPos |
Definition at line 47 of file periPos.c.
Referenced by ColorInit(), displaynumbersPos(), drawarcPos(), drawarcsPos(), drawpolymarkPos(), FileInit(), FileInitFromScreenPos(), fillpolylinesPos(), fontsizePos(), get_dash_or_color_Pos(), getabsourelPos(), getalufunctionPos(), getbackgroundPos(), getclipPos(), getcolormapPos(), getcolormapsizePos(), getcurwinPos(), getforegroundPos(), gethidden3dPos(), getlastPos(), getpatternPos(), getthicknessPos(), getusecolorPos(), initgraphicfromscreenPos(), initgraphicPos(), InitScilabGCPos(), set_dash_or_color_Pos(), set_line_style_Pos(), setabsourelPos(), setalufunction1Pos(), setalufunctionPos(), setclipPos(), setcolormapPos(), setcurwinPos(), setdashPos(), sethidden3dPos(), setpatternPos(), setthicknessPos(), unsetclipPos(), usecolorPos(), WriteColorRGB(), and WriteColorRGBDef().
BOOL ScilabGCPos_is_initialized = FALSE [static] |
Definition at line 48 of file periPos.c.
Referenced by clearareaPos(), displaynumbersPos(), displaystringPos(), drawarcPos(), drawarcsPos(), drawarrowsPos(), drawaxisPos(), drawlinePos(), drawpolylinePos(), drawpolylinesPos(), drawpolymarkPos(), drawrectanglePos(), drawrectanglesPos(), drawsegmentsPos(), FileInit(), FileInitFromScreenPos(), fillarcPos(), fillarcsPos(), fillpolylinePos(), fillpolylinesPos(), fillrectanglePos(), get_dash_and_color_Pos(), get_dash_or_color_Pos(), getabsourelPos(), getalufunctionPos(), getbackgroundPos(), getclipPos(), getcolormapPos(), getcolormapsizePos(), getcurwinPos(), getforegroundPos(), gethidden3dPos(), getlastPos(), getpatternPos(), getthicknessPos(), getusecolorPos(), set_dash_and_color_Pos(), set_dash_or_color_Pos(), set_line_style_Pos(), setabsourelPos(), setalufunction1Pos(), setalufunctionPos(), setclipPos(), setcolormapPos(), setcurwinPos(), setdashPos(), setgccolormapPos(), sethidden3dPos(), setpatternPos(), setthicknessPos(), unsetclipPos(), usecolorPos(), WriteColorRGB(), and xendgraphicPos().
| struct bgc ScilabGCTabPos[] |
Table in lexicographic order
char* sizePos[] = { "08" ,"10","12","14","18","24"} [static] |
| char symb_listPos[] |
Initial value:
{ "Symbol",
917,
-252,
548,
0,
WidthSymbol }
Initial value:
{ "Times-Bold",
750,
-206,
536,
0,
WidthTimesB }
Initial value:
{ "Times-BoldItalic",
733,
-208,
515,
0,
WidthTimesBI }
Initial value:
{ "Times-Italic",
731,
-209,
505,
0,
WidthTimesI }
Initial value:
{ "Times-Roman",
727,
-218,
512,
0,
WidthTimesR }
int WidthHelvetica[] [static] |
Initial value:
{ 278 , 278 , 355 , 556 , 556 , 889 , 667 , 222 , 333 , 333 ,
389 , 584 , 278 , 333 , 278 , 278 , 556 , 556 , 556 , 556 ,
556 , 556 , 556 , 556 , 556 , 556 , 278 , 278 , 584 , 584 ,
584 , 556 ,1015 , 667 , 667 , 722 , 722 , 667 , 611 , 778 ,
722 , 278 , 500 , 667 , 556 , 833 , 722 , 778 , 667 , 778 ,
722 , 667 , 611 , 722 , 667 , 944 , 667 , 667 , 611 , 278 ,
278 , 278 , 469 , 556 , 222 , 556 , 556 , 500 , 556 , 556 ,
278 , 556 , 556 , 222 , 222 , 500 , 222 , 833 , 556 , 556 ,
556 , 556 , 333 , 500 , 278 , 556 , 500 , 722 , 500 , 500 ,
500 , 334 , 260 , 334 , 584 }
int WidthHelveticaB[] [static] |
Initial value:
{ 278 , 333 , 474 , 556 , 556 , 889 , 722 , 278 , 333 , 333 ,
389 , 584 , 278 , 333 , 278 , 278 , 556 , 556 , 556 , 556 ,
556 , 556 , 556 , 556 , 556 , 556 , 333 , 333 , 584 , 584 ,
584 , 611 , 975 , 722 , 722 , 722 , 722 , 667 , 611 , 778 ,
722 , 278 , 556 , 722 , 611 , 833 , 722 , 778 , 667 , 778 ,
722 , 667 , 611 , 722 , 667 , 944 , 667 , 667 , 611 , 333 ,
278 , 333 , 584 , 556 , 278 , 556 , 611 , 556 , 611 , 556 ,
333 , 611 , 611 , 278 , 278 , 556 , 278 , 889 , 611 , 611 ,
611 , 611 , 389 , 556 , 333 , 611 , 556 , 778 , 556 , 556 ,
500 , 389 , 280 , 389 , 584 }
int WidthHelveticaBO[] [static] |
Initial value:
{ 278 , 333 , 474 , 556 , 556 , 889 , 722 , 278 , 333 , 333 ,
389 , 584 , 278 , 333 , 278 , 278 , 556 , 556 , 556 , 556 ,
556 , 556 , 556 , 556 , 556 , 556 , 333 , 333 , 584 , 584 ,
584 , 611 , 975 , 722 , 722 , 722 , 722 , 667 , 611 , 778 ,
722 , 278 , 556 , 722 , 611 , 833 , 722 , 778 , 667 , 778 ,
722 , 667 , 611 , 722 , 667 , 944 , 667 , 667 , 611 , 333 ,
278 , 333 , 584 , 556 , 278 , 556 , 611 , 556 , 611 , 556 ,
333 , 611 , 611 , 278 , 278 , 556 , 278 , 889 , 611 , 611 ,
611 , 611 , 389 , 556 , 333 , 611 , 556 , 778 , 556 , 556 ,
500 , 389 , 280 , 389 , 584 }
int WidthHelveticaO[] [static] |
Initial value:
{ 278 , 278 , 355 , 556 , 556 , 889 , 667 , 222 , 333 , 333 ,
389 , 584 , 278 , 333 , 278 , 278 , 556 , 556 , 556 , 556 ,
556 , 556 , 556 , 556 , 556 , 556 , 278 , 278 , 584 , 584 ,
584 , 556 ,1015 , 667 , 667 , 722 , 722 , 667 , 611 , 778 ,
722 , 278 , 500 , 667 , 556 , 833 , 722 , 778 , 667 , 778 ,
722 , 667 , 611 , 722 , 667 , 944 , 667 , 667 , 611 , 278 ,
278 , 278 , 469 , 556 , 222 , 556 , 556 , 500 , 556 , 556 ,
278 , 556 , 556 , 222 , 222 , 500 , 222 , 833 , 556 , 556 ,
556 , 556 , 333 , 500 , 278 , 556 , 500 , 722 , 500 , 500 ,
500 , 334 , 260 , 334 , 584 }
int WidthSymbol[] [static] |
Initial value:
{ 250 , 333 , 713 , 500 , 549 , 833 , 778 , 439 , 333 , 333 ,
500 , 549 , 250 , 549 , 250 , 278 , 500 , 500 , 500 , 500 ,
500 , 500 , 500 , 500 , 500 , 500 , 278 , 278 , 549 , 549 ,
549 , 444 , 549 , 722 , 667 , 722 , 612 , 611 , 763 , 603 ,
722 , 333 , 631 , 722 , 686 , 889 , 722 , 722 , 768 , 741 ,
556 , 592 , 611 , 690 , 439 , 768 , 645 , 795 , 611 , 333 ,
863 , 333 , 658 , 500 , 500 , 631 , 549 , 549 , 494 , 439 ,
521 , 411 , 603 , 329 , 603 , 549 , 549 , 576 , 521 , 549 ,
549 , 521 , 549 , 603 , 439 , 576 , 713 , 686 , 493 , 686 ,
494 , 480 , 200 , 480 , 549 }
int WidthTimesB[] [static] |
Initial value:
{ 250 , 333 , 555 , 500 , 500 ,1000 , 833 , 333 , 333 , 333 ,
500 , 570 , 250 , 570 , 250 , 278 , 500 , 500 , 500 , 500 ,
500 , 500 , 500 , 500 , 500 , 500 , 333 , 333 , 570 , 570 ,
570 , 500 , 930 , 722 , 667 , 722 , 722 , 667 , 611 , 778 ,
778 , 389 , 500 , 778 , 667 , 944 , 722 , 778 , 611 , 778 ,
722 , 556 , 667 , 722 , 722 ,1000 , 722 , 722 , 667 , 333 ,
278 , 333 , 581 , 500 , 333 , 500 , 556 , 444 , 556 , 444 ,
333 , 500 , 556 , 278 , 333 , 556 , 278 , 833 , 556 , 500 ,
556 , 556 , 444 , 389 , 333 , 556 , 500 , 722 , 500 , 500 ,
444 , 394 , 220 , 394 , 520 }
int WidthTimesBI[] [static] |
Initial value:
{ 250 , 389 , 555 , 500 , 500 , 833 , 778 , 333 , 333 , 333 ,
500 , 570 , 250 , 606 , 250 , 278 , 500 , 500 , 500 , 500 ,
500 , 500 , 500 , 500 , 500 , 500 , 333 , 333 , 570 , 570 ,
570 , 500 , 832 , 667 , 667 , 667 , 722 , 667 , 667 , 722 ,
778 , 389 , 500 , 667 , 611 , 889 , 722 , 722 , 611 , 722 ,
667 , 556 , 611 , 722 , 667 , 889 , 667 , 611 , 611 , 333 ,
278 , 333 , 570 , 500 , 333 , 500 , 500 , 444 , 500 , 444 ,
333 , 500 , 556 , 278 , 278 , 500 , 278 , 778 , 556 , 500 ,
500 , 500 , 389 , 389 , 278 , 556 , 444 , 667 , 500 , 444 ,
389 , 348 , 220 , 348 , 570 }
int WidthTimesI[] [static] |
Initial value:
{ 250 , 333 , 420 , 500 , 500 , 833 , 778 , 333 , 333 , 333 ,
500 , 675 , 250 , 333 , 250 , 278 , 500 , 500 , 500 , 500 ,
500 , 500 , 500 , 500 , 500 , 500 , 333 , 333 , 675 , 675 ,
675 , 500 , 920 , 611 , 611 , 667 , 722 , 611 , 611 , 722 ,
722 , 333 , 444 , 667 , 556 , 833 , 667 , 722 , 611 , 722 ,
611 , 500 , 556 , 722 , 611 , 833 , 611 , 556 , 556 , 389 ,
278 , 389 , 422 , 500 , 333 , 500 , 500 , 444 , 500 , 444 ,
278 , 500 , 500 , 278 , 278 , 444 , 278 , 722 , 500 , 500 ,
500 , 500 , 389 , 389 , 278 , 500 , 444 , 667 , 444 , 444 ,
389 , 400 , 275 , 400 , 541 }
int WidthTimesR[] [static] |
Initial value:
{ 250 , 333 , 408 , 500 , 500 , 833 , 778 , 333 , 333 , 333 ,
500 , 564 , 250 , 564 , 250 , 278 , 500 , 500 , 500 , 500 ,
500 , 500 , 500 , 500 , 500 , 500 , 278 , 278 , 564 , 564 ,
564 , 444 , 921 , 722 , 667 , 667 , 722 , 611 , 556 , 722 ,
722 , 333 , 389 , 722 , 611 , 889 , 722 , 722 , 556 , 722 ,
667 , 556 , 611 , 722 , 722 , 944 , 722 , 722 , 611 , 333 ,
278 , 333 , 469 , 500 , 333 , 444 , 500 , 444 , 500 , 444 ,
333 , 500 , 500 , 278 , 278 , 500 , 278 , 778 , 500 , 500 ,
500 , 500 , 333 , 389 , 278 , 500 , 500 , 722 , 500 , 500 ,
444 , 480 , 200 , 480 , 541 }
1.5.1