terraintexture.h
来自「x3d_new.rar」· C头文件 代码 · 共 60 行
H
60 行
#pragma once
#include <vector>
#include <string>
#include <assert.h>
#include <d3d9.h>
#include "Field.h"
struct STextureElementInfo
{
std::string m_sFileName; // 文件名
int m_nPercentage; // 百分比
D3DLOCKED_RECT m_d3dlr; // 锁定的区域
LPDIRECT3DTEXTURE9 m_pTexture; // 纹理指针
int m_nEndHeight; // 起始高度
};
class CFieldTexturePainter
{
public:
CFieldTexturePainter(void);
~CFieldTexturePainter(void);
// 地形数据指针
void SetField(CField* pField){
m_pField = pField;
}
// 设备指针
void SetDevice(LPDIRECT3DDEVICE9 pDevice){
m_pDevice = pDevice;
}
// 尺寸
void SetSize(int nSize){
m_nSize = nSize;
}
// 添加纹理元素
bool AddElement(char* sFileName, int nPercentage);
// 创建纹理
bool PaintTexture(LPDIRECT3DTEXTURE9* ppTexture);
// 清除纹理元素
void ClearElement(void);
public:
private:
std::vector<STextureElementInfo> m_TextureElements; // 纹理元素表
int m_nTotalPercentage; // 用于记录所有纹理总共占有高度比率
CField* m_pField; // 地形数据指针
LPDIRECT3DDEVICE9 m_pDevice; // 设备
int m_nSize; // 尺寸
};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?