1 /*********************************************************************** 2 * 3 * ***** *** *** 4 * * * * * * 5 * * *** *** 6 * * * * * * 7 * ***** *** *** 8 * 9 * A FREE Finite Elements Analysis Program in ANSI C for Windows & UNIX. 10 * 11 * Composed and edited and copyright by 12 * Professor Dr.-Ing. Frank Rieg, University of Bayreuth, Germany 13 * 14 * eMail: 15 * frank.rieg@uni-bayreuth.de 16 * dr.frank.rieg@t-online.de 17 * 18 * V15.0 November 18, 2015 19 * 20 * This program is free software; you can redistribute it and/or modify 21 * it under the terms of the GNU General Public License as published by 22 * the Free Software Foundation; either version 2, or (at your option) 23 * any later version. 24 * 25 * This program is distributed in the hope that it will be useful, 26 * but WITHOUT ANY WARRANTY; without even the implied warranty of 27 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 28 * GNU General Public License for more details. 29 * 30 * You should have received a copy of the GNU General Public License 31 * along with this program; see the file COPYING. If not, write to 32 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. 33 ***********************************************************************/ 34 /*********************************************************************** 35 * Z88O.H fuer UNIX und Windows 36 * 3.8.2011 Rieg 37 ***********************************************************************/ 38 39 /*********************************************************************** 40 * Datentypen Windows und UNIX 41 ***********************************************************************/ 42 #define FR_INT4AY long * /* Pointer auf long */ 43 #define FR_INT4 long /* 4 Bytes Integer */ 44 #define FR_SIZERW size_t /* Size fuer fread, fwrite */ 45 #define FR_CHARAY char * /* Pointer auf char */ 46 47 #ifdef FR_XDOUB 48 #define FR_SQRT sqrt /* sqrt */ 49 #define FR_POW pow /* pow */ 50 #define FR_FABS fabs /* fabs */ 51 #define FR_SIN sin /* sin */ 52 #define FR_COS cos /* cos */ 53 #define FR_ATAN atan /* atan */ 54 #define FR_DOUBLEAY double * /* Pointer auf double */ 55 #define FR_DOUBLE double /* double */ 56 #endif 57 58 #ifdef FR_UNIX 59 #define FR_CALLOC calloc /* calloc */ 60 #endif 61 62 #ifdef FR_WIN 63 #define FR_CALLOC calloc /* calloc */ 64 #endif 65 66 #include <z88math.h> 67 68 /*********************************************************************** 69 * Icon 70 ***********************************************************************/ 71 #define ICO_Z88O 10 72 73 /*********************************************************************** 74 * Cursor 75 ***********************************************************************/ 76 #define CUR_Z88O 11 77 78 /*********************************************************************** 79 * Toolbar 80 ***********************************************************************/ 81 #define BMP_Z88O 12 82 83 /*********************************************************************** 84 * Steuerflags 85 ***********************************************************************/ 86 #define ID_NOTLOADSTRUC 20 /* Ladezustand Struktur */ 87 #define ID_LOADSTRUC 21 /* Strukturfile geladen */ 88 #define ID_NOTLOADVERF 30 /* Ladezustand Z88O2.TXT */ 89 #define ID_LOADVERF 31 /* Z88O2.TXT geladen */ 90 #define ID_NOTLOADSPANN 40 /* Ladezustand Z88O8.TXT */ 91 #define ID_LOADSPANN 41 /* Z88O8.TXT geladen */ 92 #define ID_NOTLOADSPAO5 45 /* Ladezustand Z88O5.TXT */ 93 #define ID_LOADSPAO5 46 /* Z88O5.TXT geladen */ 94 #define ID_ZOOM 50 /* Maus: Zoomen */ 95 #define ID_PAN 51 /* Maus: Verschieben */ 96 #define ID_ROTATE 52 /* Maus: Rotieren */ 97 #define ID_FUNKEY 60 /* Rotieren via F-Tasten */ 98 #define ID_MOUSE 61 /* Rotieren via Maus */ 99 #define ID_DISABLELABELS 70 /* Labels aus */ 100 #define ID_ENABLELABELS 71 /* Labels an */ 101 #define ID_NOTLOADRBD 80 /* Ladezustand Z88I2.TXT */ 102 #define ID_LOADRBD 81 /* Z88I2.TXT geladen */ 103 #define ID_NOTLOADI5 85 /* Ladezustand Z88I2.TXT */ 104 #define ID_LOADI5 86 /* Z88I5.TXT geladen */ 105 106 /*********************************************************************** 107 * Menue-IDs 108 ***********************************************************************/ 109 #define IDM_RUN 100 110 #define IDM_FILE 102 111 #define IDM_XIT 104 112 #define IDM_WER 106 113 114 #define IDM_ZOOM 110 115 #define IDM_PAN 112 116 #define IDM_ROTATE 114 117 118 #define IDM_UNVERFORMT 120 119 #define IDM_VERFORMT 122 120 121 #define IDM_LIGHT 130 122 #define IDM_HIDDEN 131 123 #define IDM_WIREFR 132 124 #define IDM_SHOWSPANN 133 125 #define IDM_SHOWGAUSS 134 126 #define IDM_SHOWGAUPU 135 127 #define IDM_SHOWVX 136 128 #define IDM_SHOWVY 137 129 #define IDM_SHOWVZ 138 130 131 #define IDM_YESSCALE 150 132 #define IDM_NOSCALE 152 133 134 #define IDM_NOLABELS 160 135 #define IDM_KNOTEN 162 136 #define IDM_ELEMENTE 164 137 #define IDM_LALLES 165 138 139 #define IDM_PRIOR 170 140 #define IDM_NEXT 172 141 #define IDM_UP 174 142 #define IDM_DOWN 176 143 #define IDM_LEFT 178 144 #define IDM_RIGHT 180 145 #define IDM_HOME 182 146 #define IDM_END 184 147 #define IDM_F2 186 148 #define IDM_F3 188 149 #define IDM_F4 190 150 #define IDM_F5 192 151 #define IDM_F6 194 152 #define IDM_F7 196 153 #define IDM_F8 198 154 155 #define IDM_VER 200 156 #define IDM_ROT 202 157 #define IDM_ZM 204 158 159 #define IDM_YESRBD 210 160 #define IDM_NORBD 212 161 #define IDM_ZOPLUS 214 162 #define IDM_ZOMINUS 216 163 #define IDM_RBDUX 218 164 #define IDM_RBDUY 220 165 #define IDM_RBDUZ 222 166 #define IDM_RBDU4 224 167 #define IDM_RBDU5 226 168 #define IDM_RBDU6 228 169 #define IDM_RBDUA 230 170 #define IDM_RBDOL 232 171 #define IDM_RBDFX 234 172 #define IDM_RBDFY 236 173 #define IDM_RBDFZ 238 174 #define IDM_RBDALL 240 175 176 #define IDM_GPZOPLUS 242 177 #define IDM_GPZOMINUS 244 178 179 #define IDM_YESKOOR 250 180 #define IDM_NOKOOR 252 181 182 #define IDM_YESNOST 254 183 #define IDM_NONOST 256 184 185 #define IDM_WZOOM 260 186 187 #define IDM_HELP 490 188 189 /********************************************************** 190 * Toolbar-IDs 191 **********************************************************/ 192 #define ITC_RUN 500 193 #define ITC_FILE 501 194 #define ITC_YESSCALE 502 195 196 #define ITC_MAUS 510 197 198 #define ITC_UNVERFORMT 520 199 #define ITC_VERFORMT 521 200 201 #define ITC_LIGHT 530 202 #define ITC_HIDDEN 531 203 #define ITC_WIREFR 532 204 #define ITC_SHOWSPANN 533 205 #define ITC_SHOWGAUSS 534 206 #define ITC_SHOWGAUPU 535 207 #define ITC_SHOWVX 536 208 #define ITC_SHOWVY 537 209 #define ITC_SHOWVZ 538 210 211 #define ITC_NOLABELS 540 212 #define ITC_KNOTEN 541 213 #define ITC_ELEMENTE 542 214 215 #define ITC_RBD 545 216 217 #define ITC_HELP 550 218 #define ITC_XIT 560 219 220 /********************************************************** 221 * Box-IDs 222 **********************************************************/ 223 /*--------------------------------------------------------- 224 * Interface 225 *--------------------------------------------------------*/ 226 #define IDDLG_V_TEXT1 600 227 228 /*--------------------------------------------------------- 229 * Struktur 230 *--------------------------------------------------------*/ 231 #define IDDLG_V_TEXT2 610 232 233 /*--------------------------------------------------------- 234 * Globale Vergroesserungen 235 *--------------------------------------------------------*/ 236 #define IDDLG_V_TEXT3 620 237 #define IDDLG_V_TEXT4 630 238 #define IDDLG_V_TEXT5 640 239 240 /*--------------------------------------------------------- 241 * Zentrierfaktoren 242 *--------------------------------------------------------*/ 243 #define IDDLG_V_TEXT6 650 244 #define IDDLG_V_TEXT7 660 245 #define IDDLG_V_TEXT8 670 246 247 /*--------------------------------------------------------- 248 * Vergroesserungen Verschiebungen 249 *--------------------------------------------------------*/ 250 #define IDDLG_V_TEXT9 680 251 #define IDDLG_V_TEXT10 690 252 #define IDDLG_V_TEXT11 700 253 254 /*--------------------------------------------------------- 255 * Rotationen 256 *--------------------------------------------------------*/ 257 #define IDDLG_V_TEXT12 710 258 #define IDDLG_V_TEXT13 720 259 #define IDDLG_V_TEXT14 730 260 261 /*--------------------------------------------------------- 262 * FXCOR 263 *--------------------------------------------------------*/ 264 #define IDDLG_V_TEXT15 740 265 266 /*--------------------------------------------------------- 267 * Knoten von - bis 268 *--------------------------------------------------------*/ 269 #define IDDLG_V_TEXT16 750 270 #define IDDLG_V_TEXT17 760 271 272 /*--------------------------------------------------------- 273 * Elemente von - bis 274 *--------------------------------------------------------*/ 275 #define IDDLG_V_TEXT18 770 276 #define IDDLG_V_TEXT19 780 277 278 /*********************************************************************** 279 * Alerts 280 ***********************************************************************/ 281 #define AL_NOLOG 3000 /* kein Z88O.LOG */ 282 #define AL_NODYN 3010 /* kein Z88.DYN */ 283 #define AL_WRONGDYN 3020 /* Fehler in Z88.DYN */ 284 #define AL_NOMEMY 3030 /* nicht genug Memory */ 285 #define AL_NONINT0 3040 /* NINT != 0 */ 286 #define AL_NINT0 3045 /* NINT = 0 */ 287 #define AL_NOSTRFI 3050 /* kein Strukturfile */ 288 #define AL_NOI2 3055 /* kein Z88I2.TXT */ 289 #define AL_NOO2 3060 /* kein Z88O2.TXT */ 290 #define AL_NOI5 3065 /* kein Z88I5.TXT */ 291 #define AL_NOO8 3070 /* kein Z88O8.TXT */ 292 #define AL_NOO5 3075 /* kein Z88O5.TXT */ 293 #define AL_EXMAXK 3080 /* MAXK ueberschritten */ 294 #define AL_EXMAXKOI 3085 /* MAXKOI ueberschritten */ 295 #define AL_EXMAXE 3090 /* MAXE ueberschritten */ 296 #define AL_EXMAXPR 3092 /* MAXPR ueberschritten */ 297 #define AL_EXMAXRBD 3095 /* MAXRBD ueberschritten */ 298 #define AL_EXMAXGP 3097 /* MAXGP ueberschritten */ 299 #define AL_WRONGDIM 3100 /* NDIM falsch */ 300 #define AL_NOOGL 3110 /* kein Z88O.OGL */ 301 #define AL_WRONGOGL 3120 /* Z88O.OGL falsch */ 302 #define AL_NOFCD 3130 /* kein Z88.FCD */ 303 #define AL_WRONGFCD 3140 /* Z88.FCD falsch */ 304 #define AL_NO_GLX 3150 /* kein GLX-Context */ 305 #define AL_NOHELP 3160 /* keine Hilfe */ 306 #define AL_NO_CF_GRAFICS 3170 /* kann Pango-Font nicht oeffnen */ 307 #define AL_NOMAN 3180 /* keine Z88MAN.TXT */ 308 #define AL_WRONGMAN 3190 /* Z88MAN.TXT falsch */ 309 #define AL_NOACROBAT 3200 /* kein PDF-Viewer */ 310 311 /*********************************************************************** 312 * LOGs 313 ***********************************************************************/ 314 #define LOG_BZ88OWIN 4000 /* Start Z88O */ 315 #define LOG_OPENDYN 4010 /* Oeffnen Z88.DYN */ 316 #define LOG_NODYN 4020 /* kein Z88.DYN */ 317 #define LOG_WRONGDYN 4030 /* Z88.DYN falsch */ 318 #define LOG_MAXKOI 4040 /* MAXKOI */ 319 #define LOG_MAXK 4050 /* MAXK */ 320 #define LOG_MAXE 4060 /* MAXE */ 321 #define LOG_OKDYN 4090 /* Z88.DYN gelesen..o.k. */ 322 #define LOG_ALLOCMEMY 4100 /* Memory anlegen */ 323 #define LOG_ARRAYNOTOK 4110 /* Array nicht o.k. */ 324 #define LOG_ARRAYOK 4120 /* Array o.k. */ 325 #define LOG_SUMMEMY 4130 /* Memory in Bytes */ 326 #define LOG_EXITDYN88O 4140 /* Verlassen Speicherunit DYN88O */ 327 #define LOG_REAI2 4145 /* Einlesen Z88I2.TXT */ 328 #define LOG_REAI2OK 4147 /* Z88I2.TXT eingelesen */ 329 #define LOG_REAO2 4150 /* Einlesen Z88O2.TXT */ 330 #define LOG_REAO2OK 4160 /* Z88O2.TXT eingelesen */ 331 #define LOG_REAO8 4170 /* Einlesen Z88O8.TXT */ 332 #define LOG_REAO5 4171 /* Einlesen Z88O5.TXT */ 333 #define LOG_BRI588 4172 /* Einlesen Z88I5.TXT */ 334 #define LOG_EXITRI588 4175 /* Z88I5.TXT eingelesen */ 335 #define LOG_NONINT0 4180 /* NINT != 0 */ 336 #define LOG_NINT0 4185 /* NINT = 0 */ 337 #define LOG_REAO8OK 4190 /* Z88O8.TXT eingelesen */ 338 #define LOG_REAO5OK 4195 /* Z88O5.TXT eingelesen */ 339 #define LOG_REAI1 4200 /* Einlesen Z88I1.TXT */ 340 #define LOG_REAI1OK 4210 /* Z88I1.TXT eingelesen */ 341 #define LOG_NOSTRFI 4220 /* kein Strukturfile */ 342 #define LOG_NOI2 4225 /* kein Z88I2.TXT */ 343 #define LOG_NOO2 4230 /* kein Z88O2.TXT */ 344 #define LOG_NOI5 4235 /* kein Z88I5.TXT */ 345 #define LOG_NOO8 4240 /* kein Z88O8.TXT */ 346 #define LOG_NOO5 4245 /* kein Z88O5.TXT */ 347 #define LOG_EXMAXK 4250 /* MAXK ueberschritten */ 348 #define LOG_EXMAXKOI 4255 /* MAXKOI ueberschritten */ 349 #define LOG_EXMAXE 4260 /* MAXE ueberschritten */ 350 #define LOG_EXMAXPR 4262 /* MAXPR ueberschritten */ 351 #define LOG_EXMAXRBD 4265 /* MAXRBD ueberschritten */ 352 #define LOG_EXMAXGP 4267 /* MAXGP ueberschritten */ 353 #define LOG_WRONGDIM 4270 /* NDIM falsch */ 354 #define LOG_NOOGL 4280 /* kein Z88O.OGL */ 355 #define LOG_WRONGOGL 4290 /* Z88O.OGL falsch */ 356 #define LOG_NOFCD 4300 /* kein Z88.FCD */ 357 #define LOG_WRONGFCD 4310 /* Z88.FCD falsch */ 358 #define LOG_NO_CF_ENTRIES 4320 /* kein Font CF_ENTRIES */ 359 #define LOG_NO_CF_BUTTONS 4330 /* kein Font CF_BUTTONS */ 360 #define LOG_NO_CF_GRAFICS 4340 /* kein Font CF_GRAFICS */ 361 #define LOG_NO_CO_BACKGR 4350 /* keine Farbe CO_BACKGR */ 362 #define LOG_NO_CO_FOREGR 4360 /* keine Farbe CO_FOREGR */ 363 #define LOG_NO_CO_ENTRIES 4370 /* keine Farbe CO_ENTRIES */ 364 #define LOG_NO_GLX 4380 /* kein GLX-Context */ 365 #define LOG_NOMAN 4390 /* keine Z88MAN.TXT */ 366 #define LOG_WRONGMAN 4400 /* Z88MAN.TXT falsch */ 367 #define LOG_NOACROBAT 4410 /* kein PDF-Viewer */ 368 369 370