VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
shapeMultipatch.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2025 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #ifndef SHAPEMULTIPATCH_H
7 #define SHAPEMULTIPATCH_H
8 
9 #include "shape/shapeDefines.h"
10 #include <stdio.h>
11 #include "shape/shapeElement.h"
13 
14 class DtShapePointZ;
15 class DtShapePoint;
16 class DtShapeReader;
18 class DtGroup;
19 
20 // class DtShapeMultipatch:
21 //
22 
24 {
31 };
32 
34 {
35 
36 public:
37 
38  // default constructor.
39  DtShapeMultipatch(double elevationFactor);
40 
41  // destructor
42  virtual ~DtShapeMultipatch() override;
43 
44  virtual bool load(FILE *f, bool loadMeasures = true,
45  const DtShapeProjection *projection = NULL) override;
46  virtual DtShapePoint *point(int i) override;
47  virtual DtInt32 numPoints() override;
48  virtual DtInt32 numPoints(int part);
49  virtual DtInt32 numParts();
50  virtual DtInt32 initialVertex(int part);
51  virtual DtInt32 partType(int part);
52  virtual void setElevation(double elev) override;
53  virtual void calculateMaxMins(double &myMaxHigh, double &myMinHigh) override;
54 
55  virtual DtGroup *import(DtShapeReader *reader) override;
56 
57  virtual bool importAsFeature(DtShapeVectorReader *reader,
58  DtSpecificationID specID,
59  DtSpecification &specification) override;
60 
61 protected:
62 
63  virtual DtGroup* importStrip(DtShapeReader* reader, int part);
64  virtual DtGroup* importFan(DtShapeReader* reader, int part);
65  virtual DtGroup* importPoly(DtShapeReader* reader, int part);
66 
67  DtNetFloat64 myBoundingBox[4];
68  DtNetInt32 myNumParts;
69  DtNetInt32 myNumPoints;
70  DtNetInt32* myParts;
71  DtNetInt32* myPartTypes;
72  DtNetFloat64 myMinMax[2];
74  DtNetFloat64 myZRange[2];
75 
76 };
77 
78 #endif
virtual DtInt32 numPoints()=0
virtual void calculateMaxMins(double &myMaxHigh, double &myMinHigh)=0
Definition: shapeVectorReader.h:29
Definition: shapeProjectionInformation.h:68
unsigned int DtSpecificationID
Definition: specificationManager.h:22
Definition: group.h:28
Definition: shapeMultipatch.h:30
DtNetInt32 myNumPoints
Definition: shapeMultipatch.h:69
virtual void setElevation(double elev)=0
DtNetInt32 myNumParts
Definition: shapeMultipatch.h:68
virtual bool load(FILE *f, bool loadMeasures=false, const DtShapeProjection *projection=NULL)=0
Definition: shapeMultipatch.h:29
virtual DtShapePoint * point(int i)=0
int DtInt32
Definition: vrvControlStructTypes.h:31
Definition: shapeElement.h:30
Definition: specification.h:27
Definition: shapeMultipatch.h:27
Definition: shapeReader.h:30
virtual bool importAsFeature(DtShapeVectorReader *reader, DtSpecificationID specID, DtSpecification &s)=0
Definition: shapePointZ.h:21
DtShapePointZ * myPointZs
Definition: shapeMultipatch.h:73
Definition: shapeMultipatch.h:25
Definition: shapeMultipatch.h:26
Definition: shapeMultipatch.h:28
#define DT_DLL_shape
Definition: shapeDefines.h:23
Definition: shapePoint.h:22
DtShapeMultipatchPartType
Definition: shapeMultipatch.h:23
DtNetInt32 * myPartTypes
Definition: shapeMultipatch.h:71
Definition: shapeMultipatch.h:33
DtNetInt32 * myParts
Definition: shapeMultipatch.h:70

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)