|
-
- -- 保存到文件
- function cc.HeightFieldComponent:save(fileName)
- local xml = {};
-
- xml.HeightMin = self:getHeightMin();
- xml.HeightMax = self:getHeightMax();
- xml.GridSize = self:getGridSize();
-
- local box = self:getBoundingBox();
- xml.BoundingBox = {min = box:getMin() ; max = box:getMax()};
-
- xml.HeightFieldFile = fileName .. ".png";
-
- local heightField = self:getHeightField();
- heightField:saveToPNG(xml.HeightFieldFile);
-
- table.saveFile(xml , fileName);
- end
-
- -- 从文件载入,并创建HeightFieldComponent实例
- function cc.HeightFieldComponent:load(fileName)
- local xml = table.loadFile(fileName);
- local heightField = cc.HeightField:createFromImage(xml.HeightFieldFile
- , xml.HeightMin
- , xml.HeightMax
- );
- local component = cc.HeightFieldComponent:create(heightField
- , cc.BoundingBox:new(xml.BoundingBox.min , xml.BoundingBox.max)
- , xml.HeightMin
- , xml.HeightMax
- , xml.GridSize
- );
- component:_notifyFileName(fileName);
- component:_notifyHeightMapPath(xml.HeightFieldFile);
- return component;
- end
|