-- 保存到文件 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