13 #include <vlutil/vlNetTypes.h>
15 #include <vlutil/vlPrint.h>
31 #define DO_LINEAR_FEATURES
35 #define DO_MICRO_TERRAIN
150 unsigned int CCTT_constant();
206 unsigned int cache();
208 bool contains_tins();
209 bool patch0_occupied();
210 bool patch0_dyn_terr();
212 bool patch0_no_tas();
213 bool patch1_occupied();
214 bool patch1_dyn_terr();
216 bool patch1_no_tas();
217 bool patch2_occupied();
218 bool patch2_dyn_terr();
220 bool patch2_no_tas();
221 bool patch3_occupied();
222 bool patch3_dyn_terr();
224 bool patch3_no_tas();
225 unsigned int unused();
251 bool read(FILE* fp,
bool debug =
false);
264 unsigned int padding();
265 DtU8 num_connections();
315 unsigned int patch_offset();
316 unsigned int quad_offset();
318 unsigned int padding();
319 bool is_abstract_feature();
411 unsigned int PostMask();
412 DtU8 MicroTerrainType();
485 DtU8 soil_of_northern_tri();
486 DtU8 soil_of_southern_tri();
487 bool either_tri_has_features();
488 bool either_tri_has_buildings();
489 bool either_tri_has_trees_or_treelines();
490 bool either_tri_has_microterrain();
491 int scaled_elevation();
511 DtU8
Blank1() {
return((bvp&0xc0) >> 6); };
517 DtU8 AdjSides() {
return(adj_sides); };
537 DtInfo(
"template c4b_terrain_element::describe\n");
543 DtInfo(
" ");DtInfo(
"z=%lf\n", native_z);
558 DtInfo(
"c4b_assoc_vertex: ");
562 DtInfo(
" index[%d]=%u,", i, (DtU16)
index[i]);
591 DtU16 Patch1Offset();
592 DtU16 Patch2Offset();
593 DtU16 Patch3Offset();
604 DtNetU8 feature_present[CTDB_MAX_POSTS_PER_PATCH * 2];
616 DtU16 Patch1Offset();
617 DtU16 Patch2Offset();
618 DtU16 Patch3Offset();
643 void parse_soil_types(
C4B &c4b);
644 void parse_grid_posts(
C4B &c4b);
657 int incrementTdbFeatureCount();
711 unsigned int patch0_number_from_patch_group_number(
unsigned int patch_group_num);
713 bool read_patch_group_headers(
bool debug =
false);
714 bool read_nodes(
bool debug =
false);
715 bool read_edges(
bool debug =
false);
716 bool read_feature_data();
717 bool read_grid_posts(
bool debug =
false);
718 bool read_all_patch_data(
bool debug =
false);
779 virtual bool loadTerrain(
const DtFilename& filename,
786 virtual bool loadTerrain(
const DtFilename& filename,
808 bool read(
const DtFilename& filename);
DtNetU8 vert1
Definition: c4bReader.h:473
unsigned int num_pages
Definition: c4bReader.h:740
DtNetU32 raw_bits
Definition: c4bReader.h:270
Definition: c4bReader.h:763
c4b_te_info info
Definition: c4bReader.h:575
static const int CTDB_N_SOILS
Definition: c4bReader.h:38
DtNetU32 raw_bits
Definition: c4bReader.h:327
static const int DATUM_WGS72
Definition: c4bReader.h:42
virtual void setReader(DtC4bReader *reader)
Definition: c4bReader.h:680
c4b_assoc_vertex vert
Definition: c4bReader.h:574
Definition: c4bReader.h:259
Definition: c4bReader.h:273
DtSurface * myBuilding_surface
Definition: c4bReader.h:664
Definition: c4bReader.h:424
static const int DATUM_KAUAI
Definition: c4bReader.h:69
static const int DATUM_CAMPAREAASTRO
Definition: c4bReader.h:52
DtNetU16 size
Definition: c4bReader.h:394
Type padding1
Definition: c4bReader.h:568
static const int DATUM_DJAKARTA
Definition: c4bReader.h:53
DtNetU8 adj_sides
Definition: c4bReader.h:524
unsigned int num_patches_high
Definition: c4bReader.h:744
DtNetU16 x
Definition: c4bReader.h:381
DtNetInt32 edge
Definition: c4bReader.h:286
DtNetU16 patch3_offset
Definition: c4bReader.h:602
void describe()
Definition: c4bReader.h:535
static const int DATUM_NASBNAD27
Definition: c4bReader.h:45
static const int DATUM_KERTAU48
Definition: c4bReader.h:61
virtual DtC4bReader * reader() const
Definition: c4bReader.h:674
FILE * fp
Definition: c4bReader.h:725
c4b_s1000_soil_type
Definition: c4bReader.h:114
Definition: c4bReader.h:612
static const int CTDB_DATE_LENGTH
Definition: c4bReader.h:83
Definition: c4bReader.h:635
Definition: c4bReader.h:119
c4b_node_flags flags
Definition: c4bReader.h:298
static const int DATUM_TOKYO
Definition: c4bReader.h:79
Definition: c4bReader.h:123
DtNetU16 patch1_offset
Definition: c4bReader.h:625
static const int DATUM_ED50
Definition: c4bReader.h:40
static const int FT_TREE
Definition: c4bReader.h:401
static const int DATUM_CONUSNAD27
Definition: c4bReader.h:44
Definition: c4bReader.h:118
static const int FT_BUILDING
Definition: c4bReader.h:400
static const int DATUM_OAHU
Definition: c4bReader.h:68
unsigned int num_posts_wide
Definition: c4bReader.h:745
Definition: c4bReader.h:481
static const int DATUM_MAUI
Definition: c4bReader.h:67
static const int DATUM_NIGERIA
Definition: c4bReader.h:65
Definition: c4bReader.h:405
c4b_node * nodes
Definition: c4bReader.h:729
DtNetU32 raw_bits
Definition: c4bReader.h:498
Definition: c4bReader.h:134
static const int DATUM_SACAMPOINCHAUSPE
Definition: c4bReader.h:72
DtNetU16 first_last_height
Definition: c4bReader.h:454
Definition: c4bReader.h:385
Definition: c4bReader.h:126
int incrementTdbFeatureCount()
Definition: c4bReader.h:687
DtNetInt32 last_node
Definition: c4bReader.h:341
static const int DATUM_ED79
Definition: c4bReader.h:41
c4b_terrain_element< DtNetU16 > c4b_terrain_element_16
Definition: c4bReader.h:579
static const int TE_ADJ_TRI_MAP_DIMENSION
Definition: c4bReader.h:530
Definition: surface.h:179
Definition: gridPostList.h:51
static const int DATUM_GUNUNGSEGARA
Definition: c4bReader.h:56
DtGridPostList * grid_post_vertex_list
Definition: c4bReader.h:660
DtNetU16 patch1_offset
Definition: c4bReader.h:600
unsigned int num_patch_groups
Definition: c4bReader.h:742
DtNetU16 patch2_offset
Definition: c4bReader.h:601
DtNetU16 patch2_offset
Definition: c4bReader.h:626
unsigned int num_patches_wide
Definition: c4bReader.h:743
Definition: c4bReader.h:120
Definition: c4bReader.h:552
DtNetInt32 distance
Definition: c4bReader.h:339
virtual void init(const DtFilename &filename, DtTerrainDatabase *terrain)
static const int DATUM_SAYACARE
Definition: c4bReader.h:76
#define DT_DLL_ctdb
Definition: ctdbDefines.h:23
virtual const DtString dataType() const =0
Definition: c4bReader.h:587
static const int DATUM_ALASKACANADA27
Definition: c4bReader.h:66
virtual bool loadTerrain(const DtFilename &filename, DtTerrainDatabase *terrain)=0
static const int DATUM_LIBERIA64
Definition: c4bReader.h:62
Definition: c4bReader.h:311
DtNetU32 raw_bits
Definition: c4bReader.h:156
void progressCallbackSetValueFunction(int value)
Definition: terrainDatabase.h:132
unsigned int num_patches
Definition: c4bReader.h:741
DtNetInt32 first_node
Definition: c4bReader.h:340
Definition: c4bReader.h:117
Type adj[TE_ADJ_TRI_MAP_DIMENSION]
Definition: c4bReader.h:573
void progressCallbackEndFunction()
Definition: terrainDatabase.h:134
static const int FT_MICRO
Definition: c4bReader.h:399
static const int DATUM_SAPROVISIONAL56
Definition: c4bReader.h:75
static const int DATUM_HERATNORTH
Definition: c4bReader.h:57
DtNetU8 soil0_and_soil1
Definition: c4bReader.h:471
Definition: c4bReader.h:531
DtNetU16 unused
Definition: c4bReader.h:628
DtC4b parsed_c4b
Definition: c4bReader.h:747
DtU8 Blank1()
Definition: c4bReader.h:511
static const int DATUM_SACORREGOALEGRE
Definition: c4bReader.h:74
static const int DATUM_ADINDAN
Definition: c4bReader.h:48
Definition: coordSystem.h:54
DtNetU16 patch3_offset
Definition: c4bReader.h:627
int myTdbFeatureCount
Definition: c4bReader.h:670
static const int CTDB_MAX_POSTS_PER_PATCH
Definition: c4bReader.h:583
c4b_file_header my_ctdb
Definition: c4bReader.h:727
DtC4bReader * myReader
Definition: c4bReader.h:669
Definition: c4bReader.h:129
DtNetU32 data_start
Definition: c4bReader.h:234
Definition: c4bReader.h:441
DtNetU8 soil1
Definition: c4bReader.h:523
DtU8 PatchAdj()
Definition: c4bReader.h:513
static const int DATUM_NASANAD27
Definition: c4bReader.h:46
Definition: c4bReader.h:116
Definition: c4bReader.h:142
static const int CTDB_NAME_LENGTH
Definition: c4bReader.h:82
static const int CTDB_HEADER_RESERVED
Definition: c4bReader.h:84
static const int DATUM_GEOD49
Definition: c4bReader.h:54
Definition: c4bReader.h:124
DtNetU16 soil_and_edge_key
Definition: c4bReader.h:437
DtNetFloat32 z
Definition: c4bReader.h:572
c4b_xyo_coord2d pt
Definition: c4bReader.h:571
c4b_edge_ctdb_feature_reference * feature
Definition: c4bReader.h:344
DtSurface * myTree_surface
Definition: c4bReader.h:663
Definition: c4bReader.h:135
c4b_grid_post * grid_posts
Definition: c4bReader.h:732
DtU8 Vertices()
Definition: c4bReader.h:512
DtU8 Soil0()
Definition: c4bReader.h:515
static const int DATUM_BUKITRIMPAH
Definition: c4bReader.h:51
Definition: c4bReader.h:127
DtU8 * patch_data
Definition: c4bReader.h:736
DtNetFloat32 y
Definition: c4bReader.h:304
Definition: surfaceManager.h:30
static const int DATUM_LUZON
Definition: c4bReader.h:63
c4b_edge * edges
Definition: c4bReader.h:730
c4b_patch_group_headers * patch_group_headers
Definition: c4bReader.h:728
Definition: terrainReader.h:41
DtNetU16 radius
Definition: c4bReader.h:453
DtNetU32 raw_bits
Definition: c4bReader.h:235
DtNetU16 num_vertices
Definition: c4bReader.h:362
void describe()
Definition: c4bReader.h:556
static const int DATUM_MERCHICH
Definition: c4bReader.h:64
Definition: c4bReader.h:202
DtNetU32 raw_bits
Definition: c4bReader.h:418
virtual DtC4bReader * reader() const
Definition: c4bReader.h:751
c4b_node_ctdb_connection * connection
Definition: c4bReader.h:299
DtNetU32 patch_number
Definition: c4bReader.h:326
DtU8 Soil1()
Definition: c4bReader.h:516
Definition: c4bReader.h:505
static const int DATUM_GREATBRITAIN36
Definition: c4bReader.h:70
static const int DATUM_NAD83
Definition: c4bReader.h:47
Definition: c4bReader.h:369
DtNetInt32 node
Definition: c4bReader.h:285
DtNetInt32 num_features
Definition: c4bReader.h:342
DtC4bPatchGroup * patch_group
Definition: c4bReader.h:659
DtNetU8 data_size
Definition: c4bReader.h:361
DtNetU8 type_code
Definition: c4bReader.h:360
DT_DLL_ctdb double scale_to_patch(double bar)
Definition: terrainInitializer.h:16
static const int DATUM_IRELAND65
Definition: c4bReader.h:60
virtual Coordinate_System * coordinateSystem(const DtFilename &filename)=0
static const int FT_LINEAR
Definition: c4bReader.h:403
int * tri2_soil_type
Definition: c4bReader.h:667
Definition: c4bReader.h:458
static const int DATUM_QORNOQ
Definition: c4bReader.h:71
void progressCallbackStartFunction(const char *label, int range)
Definition: terrainDatabase.h:131
static const int DATUM_SACHUAASTRO
Definition: c4bReader.h:73
Definition: c4bReader.h:696
Definition: c4bReader.h:130
C4B my_ctdb
Definition: c4bReader.h:793
DtNetU8 soil0
Definition: c4bReader.h:522
static const int CTDB_PATCHES_PER_GROUP
Definition: c4bReader.h:582
Type index[TE_VERT_DIMENSION]
Definition: c4bReader.h:567
Definition: terrainDatabase.h:148
Definition: c4bReader.h:121
static const int DATUM_ARC50
Definition: c4bReader.h:49
Definition: c4bReader.h:351
DtNetU16 pad
Definition: c4bReader.h:395
Definition: c4bReader.h:128
DtNetU8 vert2
Definition: c4bReader.h:474
static const int DATUM_GUAM63
Definition: c4bReader.h:55
Definition: c4bReader.h:125
DtNetU16 y
Definition: c4bReader.h:382
static const int CTDB_EDGE_KEY
Definition: c4bReader.h:422
static const int DATUM_WGS84
Definition: c4bReader.h:43
voidpf uLong offset
Definition: ioapi.h:42
virtual int optionalFileFlags(const DtFilename &filename)
Definition: c4bReader.h:801
static const int FT_CANOPY
Definition: c4bReader.h:402
static const int DATUM_AUSTRALIAN
Definition: c4bReader.h:50
static const int DATUM_TAMANARIVEOBSV25
Definition: c4bReader.h:77
#define X(a)
Definition: DtSharedSimulationSettings.h:46
static const int DATUM_HJORSEY55
Definition: c4bReader.h:58
static const int CTDB_PATCH_CACHES
Definition: c4bReader.h:81
int * tri1_soil_type
Definition: c4bReader.h:666
DtNetU16 width
Definition: c4bReader.h:436
DtSurfaceManager * mySurfaces
Definition: c4bReader.h:662
DtNetU8 vert0
Definition: c4bReader.h:472
static const int DATUM_INDIAN
Definition: c4bReader.h:59
Definition: c4bReader.h:122
DtNetU16 unused
Definition: c4bReader.h:603
static const int TE_VERT_DIMENSION
Definition: c4bReader.h:529
Definition: c4bReader.h:330
Definition: c4bPatchGroup.h:19
static const int DATUM_TIMBOLAI48
Definition: c4bReader.h:78
DtNetFloat32 x
Definition: c4bReader.h:303
Definition: c4bReader.h:289
c4b_terrain_element< DtNetU8 > c4b_terrain_element_8
Definition: c4bReader.h:578
unsigned int num_grid_posts
Definition: c4bReader.h:734