HeightfieldTesselator
from panda3d.core import HeightfieldTesselator
- class HeightfieldTesselator
Bases:
Bases:
Namable
Inheritance diagram
- __init__(param0: HeightfieldTesselator)
- __init__(name: str)
- generate() NodePath
Generates a tree of nodes that represents the heightfield. This can be reparented into the scene.
- getElevation(x: float, y: float) float
Fetches the elevation at (x,y), where the input coordinate is specified in pixels. This ignores the current tesselation level and instead provides an accurate number. Linear blending is used for non-integral coordinates.
- heightfield() PNMImage
Returns a reference to the heightfield (a
PNMImage
) contained inside theHeightfieldTesselator
. You can use the reference to alter the heightfield.
- setFocalPoint(x: int, y: int)
Sets the focal point. The tesselator generates high-resolution terrain around the focal point, and progressively lower and lower resolution terrain as you get farther away. The units are in pixels.
- setHeightfield(filename: Filename, type: PNMFileType) bool
Loads the specified greyscale image file into the heightfield.
- setHorizontalScale(h: float)
Sets the horizontal scale. The default scale is 1.0, meaning that each pixel in the heightfield is 1x1 panda units wide.
- setPolyCount(n: int)
Sets the polygon-count target. The tesselator usually manages to come within about 20% of the target, plus or minus.
- setVerticalScale(v: float)
Sets the vertical scale. The default scale is 255.0, meaning that each as the gray value ranges from (0-1), the elevation ranges from (0-255) feet.
- setVisibilityRadius(r: int)
Sets the visibility radius. Polygons that are completely outside the radius (relative to the focal point) are cropped away. The cropping is imperfect (all approximations are conservative), so this should be used in conjunction with a far clipping plane, fog, or some other visibility limiting mechanism. The units are in pixels.