15 #ifndef HEIGHTFIELDTESSELATOR_H
16 #define HEIGHTFIELDTESSELATOR_H
18 #include "pandabase.h"
21 #include "pandaNode.h"
22 #include "pointerTo.h"
26 #include "geomTristrips.h"
27 #include "geomTriangles.h"
28 #include "geomVertexWriter.h"
29 #include "geomVertexFormat.h"
71 INLINE ~HeightfieldTesselator();
75 INLINE
void set_poly_count(
int n);
76 INLINE
void set_visibility_radius(
int r);
77 INLINE
void set_focal_point(
int x,
int y);
78 INLINE
void set_horizontal_scale(
double h);
79 INLINE
void set_vertical_scale(
double v);
80 INLINE
void set_max_triangles(
int n);
82 double get_elevation(
double x,
double y);
90 bool _radii_calculated;
93 int *_triangle_totals;
106 INLINE
bool subdivide(
int scale,
int x,
int y);
107 void calculate_radii(
int scale);
108 void generate_square(
NodePath root,
int scale,
int x,
int y,
bool forceclose);
109 int count_triangles(
int scale,
int x,
int y);
110 int get_vertex(
int x,
int y);
111 void add_quad_to_strip(
int v1,
int v2,
int v3,
int v4);
112 void add_quad(
int v1,
int v2,
int v3,
int v4);
113 void fix_heightfield(
int size);
119 int _visibility_radius;
122 double _horizontal_scale;
123 double _vertical_scale;
127 #include "heightfieldTesselator.I"
This object provides a high-level interface for quickly writing a sequence of numeric values from a v...
The name of this class derives from the fact that we originally implemented it as a layer on top of t...
This is the base class of a family of classes that represent particular image file types that PNMImag...
A base class for all things which can have a name.
The name of a file, such as a texture file or an Egg file.
This defines the actual numeric vertex data stored in a Geom, in the structure defined by a particula...
Defines a series of disconnected triangles.
Converts a height field in the form of a greyscale image into a scene consisting of a number of GeomN...
NodePath is the fundamental system for disambiguating instances, and also provides a higher-level int...