VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
c7bFeature.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2003 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: c7bFeature.h,v $ $Revision: 1.11 $ $State: Exp $
7 *******************************************************************************/
8 
9 
10 
11 #ifndef __DtC7bFeature
12 #define __DtC7bFeature
13 
14 #include "ctdb/ctdbDefines.h"
15 #include <stdio.h>
16 #include "ctdb/c7NetTypes.h"
17 #include "geometry/point.h"
18 
19 class DtC7bGridData;
20 class DtC7bTinData;
21 class DtC7bFeature;
22 
23 // Class: DtC7bFeature
24 //
25 // The class is public because should not be used but anyone else than
26 // DtC7b.
27 //
28 
29 enum
30 {
31  FC_MICRO = 0,
37 };
38 
39 enum
43 };
44 
45 enum
46 {
48 };
49 
50 class DtC7bReader;
51 
53 {
54 public:
55 
56  DtC7bFeature();
57  ~DtC7bFeature();
58 
59  bool read(FILE *f);
60 
61  // Reads in the feature starting at the db pointer, patch group pg and
62  // patch number patchNum. The limit pointer is passed on to importCanopy
63  // to indicate the end of the feature for bounds checking purposes.
64  int processFeature(DtC7bReader *db, int pg, int patchNum,
65  void* limit);
66  int importLinear(DtC7bReader *db, bool isTree, int pg, int patchNum);
67  int importVolume(DtC7bReader *db, int pg, int patchNum);
68  // Read in the canopy starting at the db pointer, patch group pg and
69  // patch number patchNum. The limit pointer is used to determine the upper
70  // bound on the canopy.
71  int importCanopy(DtC7bReader *db, int pg, int patchNum, void* limit);
72  int importMicro(DtC7bReader *db, int pg, int patchNum);
73  void caculateExtent(const DtPoint& point, DtPoint& minPoint, DtPoint& maxPoint);
74 
75  int featureClass();
76  int vertices();
77  int microVertices();
78  int microType();
79  int postMask();
80 
81  double X(DtC7bReader *db);
82  double Y(DtC7bReader *db);
83  float Z();
84 
85  int soilIndex(int x);
86 
87  int microVertex(int x);
88 
89  int waterChars(int x);
90 
91  int volumeReference();
92  int volumeType();
93  int volumeForceId();
94  bool volumeGenericModel();
95 
96  int linearReference();
97  bool linearFirst();
98  bool linearLast();
99 
100  int canopyReference();
101  bool canopyVertValid(int x);
102  int canopyVert(int x);
103 
104  int aggReference();
105 
106  int varAttrIndex();
107  int polyCharIndex();
108 
109  int width();
110  int edgeKey();
111 
112  DtC7NetU32 featureInfo();
113 
115 };
116 
117 #endif
118 
Definition: c7bFeature.h:32
Definition: c7bReader.h:52
Definition: c7bFeature.h:35
Definition: c7bGridData.h:25
#define DT_DLL_ctdb
Definition: ctdbDefines.h:23
Definition: c7bFeature.h:41
Definition: c7bFeature.h:34
Definition: c7bFeature.h:52
Definition: c7bTinData.h:28
Definition: c7bFeature.h:33
Definition: c7bFeature.h:31
Definition: c7bFeature.h:42
Definition: c7bFeature.h:36
Definition: c7bFeature.h:40
Network-order unsigned 32-bit quantity.
Definition: c7NetTypes.h:66
DtC7NetU32 myFeatureInfo
Definition: c7bFeature.h:114
#define X(a)
Definition: DtSharedSimulationSettings.h:46
Definition: point.h:34
Definition: c7bFeature.h:47

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)