|
11 | 11 | """ |
12 | 12 | import io |
13 | 13 | import struct |
| 14 | +import sys |
14 | 15 | from enum import IntEnum, IntFlag |
15 | 16 |
|
16 | 17 | from . import Image, ImageFile, ImagePalette |
@@ -263,62 +264,43 @@ class D3DFMT(IntEnum): |
263 | 264 |
|
264 | 265 |
|
265 | 266 | # Backward compat layer |
266 | | -DDSD_CAPS = DDSD.CAPS |
267 | | -DDSD_HEIGHT = DDSD.HEIGHT |
268 | | -DDSD_WIDTH = DDSD.WIDTH |
269 | | -DDSD_PITCH = DDSD.PITCH |
270 | | -DDSD_PIXELFORMAT = DDSD.PIXELFORMAT |
271 | | -DDSD_MIPMAPCOUNT = DDSD.MIPMAPCOUNT |
272 | | -DDSD_LINEARSIZE = DDSD.LINEARSIZE |
273 | | -DDSD_DEPTH = DDSD.DEPTH |
274 | | - |
275 | | -DDSCAPS_COMPLEX = DDSCAPS.COMPLEX |
276 | | -DDSCAPS_TEXTURE = DDSCAPS.TEXTURE |
277 | | -DDSCAPS_MIPMAP = DDSCAPS.MIPMAP |
278 | | - |
279 | | -DDSCAPS2_CUBEMAP = DDSCAPS2.CUBEMAP |
280 | | -DDSCAPS2_CUBEMAP_POSITIVEX = DDSCAPS2.CUBEMAP_POSITIVEX |
281 | | -DDSCAPS2_CUBEMAP_NEGATIVEX = DDSCAPS2.CUBEMAP_NEGATIVEX |
282 | | -DDSCAPS2_CUBEMAP_POSITIVEY = DDSCAPS2.CUBEMAP_POSITIVEY |
283 | | -DDSCAPS2_CUBEMAP_NEGATIVEY = DDSCAPS2.CUBEMAP_NEGATIVEY |
284 | | -DDSCAPS2_CUBEMAP_POSITIVEZ = DDSCAPS2.CUBEMAP_POSITIVEZ |
285 | | -DDSCAPS2_CUBEMAP_NEGATIVEZ = DDSCAPS2.CUBEMAP_NEGATIVEZ |
286 | | -DDSCAPS2_VOLUME = DDSCAPS2.VOLUME |
287 | | - |
288 | | -DDPF_ALPHAPIXELS = DDPF.ALPHAPIXELS |
289 | | -DDPF_ALPHA = DDPF.ALPHA |
290 | | -DDPF_FOURCC = DDPF.FOURCC |
291 | | -DDPF_PALETTEINDEXED8 = DDPF.PALETTEINDEXED8 |
292 | | -DDPF_RGB = DDPF.RGB |
293 | | -DDPF_LUMINANCE = DDPF.LUMINANCE |
294 | | - |
295 | | -DDS_FOURCC = DDPF_FOURCC |
296 | | -DDS_RGB = DDPF_RGB |
297 | | -DDS_RGBA = DDPF_RGB | DDPF_ALPHAPIXELS |
298 | | -DDS_LUMINANCE = DDPF_LUMINANCE |
299 | | -DDS_LUMINANCEA = DDPF_LUMINANCE | DDPF_ALPHAPIXELS |
300 | | -DDS_ALPHA = DDPF_ALPHA |
301 | | -DDS_PAL8 = DDPF_PALETTEINDEXED8 |
302 | | - |
303 | | -DDS_HEADER_FLAGS_TEXTURE = DDSD_CAPS | DDSD_HEIGHT | DDSD_WIDTH | DDSD_PIXELFORMAT |
304 | | -DDS_HEADER_FLAGS_MIPMAP = DDSD_MIPMAPCOUNT |
305 | | -DDS_HEADER_FLAGS_VOLUME = DDSD_DEPTH |
306 | | -DDS_HEADER_FLAGS_PITCH = DDSD_PITCH |
307 | | -DDS_HEADER_FLAGS_LINEARSIZE = DDSD_LINEARSIZE |
308 | | - |
309 | | -DDS_HEIGHT = DDSD_HEIGHT |
310 | | -DDS_WIDTH = DDSD_WIDTH |
311 | | - |
312 | | -DDS_SURFACE_FLAGS_TEXTURE = DDSCAPS_TEXTURE |
313 | | -DDS_SURFACE_FLAGS_MIPMAP = DDSCAPS_COMPLEX | DDSCAPS_MIPMAP |
314 | | -DDS_SURFACE_FLAGS_CUBEMAP = DDSCAPS_COMPLEX |
315 | | - |
316 | | -DDS_CUBEMAP_POSITIVEX = DDSCAPS2_CUBEMAP | DDSCAPS2_CUBEMAP_POSITIVEX |
317 | | -DDS_CUBEMAP_NEGATIVEX = DDSCAPS2_CUBEMAP | DDSCAPS2_CUBEMAP_NEGATIVEX |
318 | | -DDS_CUBEMAP_POSITIVEY = DDSCAPS2_CUBEMAP | DDSCAPS2_CUBEMAP_POSITIVEY |
319 | | -DDS_CUBEMAP_NEGATIVEY = DDSCAPS2_CUBEMAP | DDSCAPS2_CUBEMAP_NEGATIVEY |
320 | | -DDS_CUBEMAP_POSITIVEZ = DDSCAPS2_CUBEMAP | DDSCAPS2_CUBEMAP_POSITIVEZ |
321 | | -DDS_CUBEMAP_NEGATIVEZ = DDSCAPS2_CUBEMAP | DDSCAPS2_CUBEMAP_NEGATIVEZ |
| 267 | +module = sys.modules[__name__] |
| 268 | +for item in DDSD: |
| 269 | + setattr(module, "DDSD_" + item.name, item.value) |
| 270 | +for item in DDSCAPS: |
| 271 | + setattr(module, "DDSCAPS_" + item.name, item.value) |
| 272 | +for item in DDSCAPS2: |
| 273 | + setattr(module, "DDSCAPS2_" + item.name, item.value) |
| 274 | +for item in DDPF: |
| 275 | + setattr(module, "DDPF_" + item.name, item.value) |
| 276 | + |
| 277 | +DDS_FOURCC = DDPF.FOURCC |
| 278 | +DDS_RGB = DDPF.RGB |
| 279 | +DDS_RGBA = DDPF.RGB | DDPF.ALPHAPIXELS |
| 280 | +DDS_LUMINANCE = DDPF.LUMINANCE |
| 281 | +DDS_LUMINANCEA = DDPF.LUMINANCE | DDPF.ALPHAPIXELS |
| 282 | +DDS_ALPHA = DDPF.ALPHA |
| 283 | +DDS_PAL8 = DDPF.PALETTEINDEXED8 |
| 284 | + |
| 285 | +DDS_HEADER_FLAGS_TEXTURE = DDSD.CAPS | DDSD.HEIGHT | DDSD.WIDTH | DDSD.PIXELFORMAT |
| 286 | +DDS_HEADER_FLAGS_MIPMAP = DDSD.MIPMAPCOUNT |
| 287 | +DDS_HEADER_FLAGS_VOLUME = DDSD.DEPTH |
| 288 | +DDS_HEADER_FLAGS_PITCH = DDSD.PITCH |
| 289 | +DDS_HEADER_FLAGS_LINEARSIZE = DDSD.LINEARSIZE |
| 290 | + |
| 291 | +DDS_HEIGHT = DDSD.HEIGHT |
| 292 | +DDS_WIDTH = DDSD.WIDTH |
| 293 | + |
| 294 | +DDS_SURFACE_FLAGS_TEXTURE = DDSCAPS.TEXTURE |
| 295 | +DDS_SURFACE_FLAGS_MIPMAP = DDSCAPS.COMPLEX | DDSCAPS.MIPMAP |
| 296 | +DDS_SURFACE_FLAGS_CUBEMAP = DDSCAPS.COMPLEX |
| 297 | + |
| 298 | +DDS_CUBEMAP_POSITIVEX = DDSCAPS2.CUBEMAP | DDSCAPS2.CUBEMAP_POSITIVEX |
| 299 | +DDS_CUBEMAP_NEGATIVEX = DDSCAPS2.CUBEMAP | DDSCAPS2.CUBEMAP_NEGATIVEX |
| 300 | +DDS_CUBEMAP_POSITIVEY = DDSCAPS2.CUBEMAP | DDSCAPS2.CUBEMAP_POSITIVEY |
| 301 | +DDS_CUBEMAP_NEGATIVEY = DDSCAPS2.CUBEMAP | DDSCAPS2.CUBEMAP_NEGATIVEY |
| 302 | +DDS_CUBEMAP_POSITIVEZ = DDSCAPS2.CUBEMAP | DDSCAPS2.CUBEMAP_POSITIVEZ |
| 303 | +DDS_CUBEMAP_NEGATIVEZ = DDSCAPS2.CUBEMAP | DDSCAPS2.CUBEMAP_NEGATIVEZ |
322 | 304 |
|
323 | 305 | DXT1_FOURCC = D3DFMT.DXT1 |
324 | 306 | DXT3_FOURCC = D3DFMT.DXT3 |
@@ -405,7 +387,7 @@ def _open(self): |
405 | 387 | else: |
406 | 388 | msg = f"Unsupported bitcount {bitcount} for {pfflags_}" |
407 | 389 | raise OSError(msg) |
408 | | - elif pfflags & DDPF_PALETTEINDEXED8: |
| 390 | + elif pfflags & DDPF.PALETTEINDEXED8: |
409 | 391 | self._mode = "P" |
410 | 392 | self.palette = ImagePalette.raw("RGBA", self.fp.read(1024)) |
411 | 393 | self.tile = [("raw", (0, 0) + self.size, 0, "L")] |
|
0 commit comments