g3dopen2.c 1005 B

12345678910111213141516171819202122232425262728293031323334
  1. #include <grass/gis.h>
  2. #include <grass/G3d.h>
  3. /*----------------------------------------------------------------------------*/
  4. void *G3d_openNewParam(const char *name, int typeIntern, int cache,
  5. G3D_Region * region, int type, int doLzw, int doRle,
  6. int precision, int tileX, int tileY, int tileZ)
  7. {
  8. void *map;
  9. int oldCompress, oldLzw, oldRle, oldPrecision, oldTileX, oldTileY,
  10. oldTileZ;
  11. int oldType;
  12. G3d_initDefaults();
  13. G3d_getCompressionMode(&oldCompress, &oldLzw, &oldRle, &oldPrecision);
  14. G3d_setCompressionMode(oldCompress, doLzw, doRle, precision);
  15. G3d_getTileDimension(&oldTileX, &oldTileY, &oldTileZ);
  16. G3d_setTileDimension(tileX, tileY, tileZ);
  17. oldType = G3d_getFileType();
  18. G3d_setFileType(type);
  19. map = G3d_openCellNew(name, typeIntern, cache, region);
  20. G3d_setCompressionMode(oldCompress, oldLzw, oldRle, oldPrecision);
  21. G3d_setTileDimension(oldTileX, oldTileY, oldTileZ);
  22. G3d_setFileType(oldType);
  23. return map;
  24. }