1 /***********************************************************************
2 *
3 * ***** *** ***
4 * * * * * *
5 * * *** ***
6 * * * * * *
7 * ***** *** ***
8 *
9 * A FREE Finite Elements Analysis Program in ANSI C for the Windows OS.
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 * Z88 should compile and run under any Windows release, starting
21 * with Windows95.
22 *
23 * This program is free software; you can redistribute it and/or modify
24 * it under the terms of the GNU General Public License as published by
25 * the Free Software Foundation; either version 2, or (at your option)
26 * any later version.
27 *
28 * This program is distributed in the hope that it will be useful,
29 * but WITHOUT ANY WARRANTY; without even the implied warranty of
30 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
31 * GNU General Public License for more details.
32 *
33 * You should have received a copy of the GNU General Public License
34 * along with this program; see the file COPYING. If not, write to
35 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
36 ***********************************************************************/
37 /***********************************************************************
38 * wrim88x gibt Texte aus (1 FR_INT4)
39 * 30.7.2011 Rieg
40 ***********************************************************************/
41
42 /***********************************************************************
43 * Fuer Windows
44 ***********************************************************************/
45 #ifdef FR_WIN
46 #include <z88x.h>
47 #include <windows.h>
48 #include <string.h> /* strlen */
49 #include <stdio.h> /* sprintf */
50 #include <stdlib.h> /* ltoa */
51 #endif
52
53 /***********************************************************************
54 * Formatbeschreiber
55 ***********************************************************************/
56 #ifdef FR_XINT
57 #define PD "%d"
58 #endif
59
60 #ifdef FR_XLONG
61 #define PD "%ld"
62 #endif
63
64 #ifdef FR_XLOLO
65 #define PD "%lld"
66 #endif
67
68 /***********************************************************************
69 * hier beginnt Function wrim88f
70 ***********************************************************************/
wrim88x(FR_INT4 i,int iatx)71 int wrim88x(FR_INT4 i,int iatx)
72 {
73 extern HDC hDC;
74 extern FR_INT4 LANG;
75
76 size_t laenge;
77
78 char cline[80];
79
80 switch(iatx)
81 {
82 /*---------------------------------------------------------------------
83 * fuer Z88TX
84 *--------------------------------------------------------------------*/
85 case TX_REAI1:
86 if(LANG == 1) TextOut(hDC,10,50,"Z88I1.TXT einlesen",18);
87 if(LANG == 2) TextOut(hDC,10,50,"Reading Z88I1.TXT",17);
88 break;
89
90 case TX_REANI:
91 if(LANG == 1) TextOut(hDC,10,50,"Z88NI.TXT einlesen",18);
92 if(LANG == 2) TextOut(hDC,10,50,"Reading Z88NI.TXT",17);
93 break;
94
95 case TX_KOOR:
96 if(LANG == 1) TextOut(hDC,10,70,"Koordinaten einlesen",20);
97 if(LANG == 2) TextOut(hDC,10,70,"Reading coordinates",19);
98 break;
99
100 case TX_POLAR:
101 if(LANG == 1)
102 TextOut(hDC,10,90,"Polar- auf kartesische Koordinaten umrechnen",42);
103 if(LANG == 2)
104 TextOut(hDC,10,90,"Converting polar to cartesian coordinates",39);
105 break;
106
107 case TX_KOIN:
108 if(LANG == 1) TextOut(hDC,10,110,"Koinzidenz einlesen",19);
109 if(LANG == 2) TextOut(hDC,10,110,"Reading element infos",21);
110 break;
111
112 case TX_SINFO:
113 if(LANG == 1) TextOut(hDC,10,150,"und Superelement-Infos einlesen",31);
114 if(LANG == 2) TextOut(hDC,10,150,"and reading superelement infos",30);
115 break;
116
117 case TX_REAI2:
118 if(LANG == 1) TextOut(hDC,10,170,"Z88I2.TXT einlesen",18);
119 if(LANG == 2) TextOut(hDC,10,170,"Reading Z88I2.TXT",17);
120 break;
121
122 case TX_REAI5:
123 if(LANG == 1) TextOut(hDC,10,210,"Z88I5.TXT einlesen",18);
124 if(LANG == 2) TextOut(hDC,10,210,"Reading Z88I5.TXT",17);
125 break;
126
127 case TX_Z88TX:
128 if(LANG == 1) TextOut(hDC,10,230,"Start Z88TX: von Z88 nach DXF",29);
129 if(LANG == 2) TextOut(hDC,10,230,"Start Z88TX: from Z88 to DXF",28);
130 break;
131
132 case TX_FX:
133 if(LANG == 1) TextOut(hDC,10,250,"Oeffnen Z88X.DXF",16);
134 if(LANG == 2) TextOut(hDC,10,250,"Opening Z88X.DXF",16);
135 break;
136
137 case TX_FAC:
138 if(LANG == 1) TextOut(hDC,10,270,"Faktoren berechnen",18);
139 if(LANG == 2) TextOut(hDC,10,270,"Computing factors",17);
140 break;
141
142 case TX_SDXF:
143 if(LANG == 1) TextOut(hDC,10,290,"DXF-Steuerwerte schreiben",25);
144 if(LANG == 2) TextOut(hDC,10,290,"Writing DXF main flags",22);
145 break;
146
147 case TX_SELE:
148 if(LANG == 1) TextOut(hDC,10,310,"DXF-Entities schreiben",22);
149 if(LANG == 2) TextOut(hDC,10,310,"Writing DXF entities",20);
150 break;
151
152 case TX_EXITZ88TX:
153 if(LANG == 1) TextOut(hDC,10,330,"Verlassen Z88TX, Z88X fertig",28);
154 if(LANG == 2) TextOut(hDC,10,330,"Leaving Z88TX, Z88X done",24);
155 break;
156
157 /*---------------------------------------------------------------------
158 * fuer Z88FX
159 *--------------------------------------------------------------------*/
160 case TX_Z88FX:
161 if(LANG == 1) TextOut(hDC,10,50,"Start Z88FX: von DXF nach Z88",29);
162 if(LANG == 2) TextOut(hDC,10,50,"Start Z88FX: from DXF to Z88",28);
163 break;
164
165 /* case TX_FX, gibts es schon oben */
166
167 case TX_REAIX:
168 if(LANG == 1) TextOut(hDC,10,70,"Z88X.DXF einlesen",17);
169 if(LANG == 2) TextOut(hDC,10,70,"Reading Z88X.DXF",16);
170 break;
171
172 case TX_DEC1ZI1:
173 if(LANG == 1)
174 TextOut(hDC,10,90,"Decodieren DXF, 1.Zeile .. (Z88I1.TXT)",38);
175 if(LANG == 2)
176 TextOut(hDC,10,90,"Decoding DXF, first line ..(Z88I1.TXT)",38);
177 break;
178
179 case TX_DEC1ZNI:
180 if(LANG == 1)
181 TextOut(hDC,10,90,"Decodieren DXF, 1.Zeile .. (Z88NI.TXT)",38);
182 if(LANG == 2)
183 TextOut(hDC,10,90,"Decoding DXF, first line ..(Z88NI.TXT)",38);
184 break;
185
186 case TX_DECKNO:
187 if(LANG == 1) TextOut(hDC,10,110,"Decodieren DXF, Knoten ..",25);
188 if(LANG == 2) TextOut(hDC,10,110,"Decoding DXF, nodes .....",25);
189 break;
190
191 case TX_FOUKNO:
192 if(LANG == 1) sprintf(cline,PD " Knoten gefunden",i);
193 if(LANG == 2) sprintf(cline,PD " nodes detected",i);
194 laenge= strlen(cline);
195 TextOut(hDC,200,110,cline,laenge);
196 break;
197
198 case TX_DECELE:
199 if(LANG == 1) TextOut(hDC,10,130,"Decodieren DXF, Elemente ..",27);
200 if(LANG == 2) TextOut(hDC,10,130,"Decoding DXF, elements ....",27);
201 break;
202
203 case TX_FOUSELE:
204 if(LANG == 1) sprintf(cline,PD " Super-Ele. gefunden",i);
205 if(LANG == 2) sprintf(cline,PD " super ele. detected",i);
206 laenge= strlen(cline);
207 TextOut(hDC,210,130,cline,laenge);
208 break;
209
210 case TX_FOUFELE:
211 if(LANG == 1) sprintf(cline,PD " Finite Ele. gefunden",i);
212 if(LANG == 2) sprintf(cline,PD " finite ele. detected",i);
213 laenge= strlen(cline);
214 TextOut(hDC,210,130,cline,laenge);
215 break;
216
217 case TX_DEC1ZI2:
218 if(LANG == 1)
219 TextOut(hDC,10,170,"Decodieren DXF, # Randbed... (Z88I2.TXT)",40);
220 if(LANG == 2)
221 TextOut(hDC,10,170,"Decoding DXF, # constraints..(Z88I2.TXT)",40);
222 break;
223
224 case TX_DECI2R:
225 if(LANG == 1)
226 TextOut(hDC,10,190,"Decodieren DXF,Randbeding... (Z88I2.TXT)",40);
227 if(LANG == 2)
228 TextOut(hDC,10,190,"Decoding DXF, constraints... (Z88I2.TXT)",40);
229 break;
230
231 case TX_DEC1ZI5:
232 if(LANG == 1)
233 TextOut(hDC,10,230,"Decodieren DXF, # Flaechenl..(Z88I5.TXT)",40);
234 if(LANG == 2)
235 TextOut(hDC,10,230,"Decoding DXF, # surface loads(Z88I5.TXT)",40);
236 break;
237
238 case TX_DECI5R:
239 if(LANG == 1)
240
241 TextOut(hDC,10,250,"Decodieren DXF,Flaechenlasten(Z88I2.TXT)",40);
242 if(LANG == 2)
243 TextOut(hDC,10,250,"Decoding DXF, surface loads (Z88I2.TXT)",40);
244 break;
245
246 case TX_WRII1:
247 if(LANG == 1) TextOut(hDC,10,270,"Z88I1.TXT beschreiben",21);
248 if(LANG == 2) TextOut(hDC,10,270,"Now writing Z88I1.TXT",21);
249 break;
250
251 case TX_WRINI:
252 if(LANG == 1) TextOut(hDC,10,270,"Z88NI.TXT beschreiben",21);
253 if(LANG == 2) TextOut(hDC,10,270,"Now writing Z88NI.TXT",21);
254 break;
255
256 case TX_WRII2:
257 if(LANG == 1) TextOut(hDC,10,290,"Z88I2.TXT beschreiben",21);
258 if(LANG == 2) TextOut(hDC,10,290,"Now writing Z88I2.TXT",21);
259 break;
260
261 case TX_WRII5:
262 if(LANG == 1) TextOut(hDC,10,330,"Z88I5.TXT beschreiben",21);
263 if(LANG == 2) TextOut(hDC,10,330,"Now writing Z88I5.TXT",21);
264 break;
265
266 case TX_EXITZ88FX:
267 if(LANG == 1) TextOut(hDC,10,350,"Verlassen Z88FX, Z88X fertig",28);
268 if(LANG == 2) TextOut(hDC,10,350,"Leaving Z88FX, Z88X done",24);
269 break;
270
271 }
272 return(0);
273 }
274
275