_GraphicsData

与图形渲染相关的数据,包括marker,摄像机,光,雾和轨迹等。 全部展开

属性展开

  • + name : string

    gra文件逻辑名。

    • 示例

      gpd =_GraphicsData.new('grafile.gra')
      gpd.name = 'grafile'
  • + resname : string

    gra文件资源名。

    • 示例

      gpd =_GraphicsData.new('grafile.gra')
      gpd.resname = 'grafile.gra'

构造方法展开

  • + function _GraphicsData(filename) : _GraphicsData

    示例

        gpd = _GraphicsData.new('grafile.gra')
  • + function _GraphicsData() : _GraphicsData

    示例

        gpd = _GraphicsData.new()

公共方法展开

  • + function addArea(area : _Area)

    添加新的区域。

    • 参数
    • area:_Area对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      area = _Area.new()
      sen.graData:addArea(area )
  • + function addCamera(camera : _Camera)

    添加新的摄像机。

    • 参数
    • camera:_Camera对象。
    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local camera = _Camera.new()
      camera.name = 'cam'
      sen.graData:addCamera(camera)
  • + function addFog(fog : _Fog)

    添加新的雾。

    • 参数
    • fog:_Fog对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local fog = _Fog.new()
      fog.name = 'fg'
      sen.graData:addFog(fog)
  • + function addGrass(grass : _Grass)

    添加新的草。

    • 参数
    • grass:_Grass对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local grass = _Grass.new()
      grass.name = 'gs'
      sen.graData:addGrass(grass)
  • + function addLight(light : _AmbientLight)
    function addLight(light : _PointLight)
    function addLight(light : _SkyLight)

    添加新的光。

    • 参数
    • light:_AmbientLight_PointLight_SkyLight 对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local ambientlight = _AmbientLight.new()
      ambientlight.name = 'ambient'
      sen.graData:addLight(ambientlight)

      local skylight = _SkyLight.new()
      skylight.name = 'sky'
      sen.graData:addLight(skylight)

      local pointlight = _PointLight.new()
      pointlight.name = 'point'
      sen.graData:addLight(pointlight)
  • + function addMarker(trans : _Matrix3D)

    添加新的marker。

    • 参数
    • trans:marker的变换矩阵。
    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local addmat = _Matrix3D.new(10, 10, 10)
      addmat.name = 'mk'
      sen.graData:addMarker(addmat)
  • + function addOrbit(orbit : _Orbit)

    添加新的轨迹。

    • 参数
    • orbit:_Orbit对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local Orbit = _Orbit.new()
      Orbit.name = 'ob'
      sen.graData:addOrbit(Orbit)
  • + function addWater(water : _Water)

    添加新的水。

    • 参数
    • water:_Water对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local water = _Water.new()
      water.name = 'wt'
      sen.graData:addWater(water)
  • + function clearAreas() : _GraphicsData

    清空所有的区域。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    local area1 = _Area.new()
    area1.name = 'ar1'
    sen.graData:addArea(area1)
    _info('Now,number of Area : ' .. sen.graData:getAreaCount())

    local area2 = _Area.new()
    area2.name = 'ar2'
    sen.graData:addArea(area2)
    _info('Now,number of Area : ' .. sen.graData:getAreaCount())

    sen.graData:clearAreas()
    _info('after clean, number of Area : ' .. sen.graData:getAreaCount())
  • + function clearCameras() : _GraphicsData

    清空所有的摄像机。

    示例

        local sen = _Scene.new('test.sen')
    _app:onIdle(function(e)
    sen:render()
    end)
    local camera1 = _Camera.new()
    camera1.name = 'cam'
    sen.graData:addCamera(camera1)
    _info('Now,number of Camera : ' .. sen.graData:getCameraCount())

    local camera2 = _Camera.new()
    camera2.name = 'cam'
    sen.graData:addCamera(camera2)
    _info('Now,number of Camera : ' .. sen.graData:getCameraCount())

    sen.graData:clearCameras()
    _info('after clean, number of Camera : ' .. sen.graData:getCameraCount())
  • + function clearFogs() : _GraphicsData

    清空所有的雾。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    local fog1 = _Fog.new()
    fog1.name = 'fg'
    sen.graData:addFog(fog1)
    _info('Now,number of Fog : ' .. sen.graData:getFogCount())

    local fog2 = _Fog.new()
    fog2.name = 'fg'
    sen.graData:addFog(fog2)
    _info('Now,number of Fog : ' .. sen.graData:getFogCount())

    sen.graData:clearFogs()
    _info('after clean, number of Fog : ' .. sen.graData:getFogCount())
  • + function clearGrasses() : _GraphicsData

    清空所有的草。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    local grass1 = _Grass.new()
    grass1.name = 'gs'
    sen.graData:addGrass(grass1)
    _info('Now,number of Grass : ' .. sen.graData:getGrassCount())

    local grass2 = _Grass.new()
    grass2.name = 'gs'
    sen.graData:addGrass(grass2)
    _info('Now,number of Grass : ' .. sen.graData:getGrassCount())

    sen.graData:clearGrasses()
    _info('after clean, number of Grass : ' .. sen.graData:getGrassCount())
  • + function clearLights() : _GraphicsData

    清空所有的光。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    local ambientlight1 = _AmbientLight.new()
    ambientlight1.name = 'ambient'
    sen.graData:addLight(ambientlight1)
    _info('Now,number of Light : ' .. sen.graData:getLightCount())

    local ambientlight2 = _AmbientLight.new()
    ambientlight2.name = 'ambient'
    sen.graData:addLight(ambientlight2)
    _info('Now,number of Light : ' .. sen.graData:getLightCount())

    sen.graData:clearLights()
    _info('after clean, number of Light : ' .. sen.graData:getLightCount())
  • + function clearMarkers() : _GraphicsData

    清空所有的marker。

    示例

        local sen = _Scene.new('test.sen')
    _app:onIdle(function(e)
    sen:render()
    end)
    local addmat1 = _Matrix3D.new()
    addmat1.name = 'mk'
    sen.graData:addMarker(addmat1)
    _info('Now, number of Marker : ' .. sen.graData:getMarkerCount())

    local addmat2 = _Matrix3D.new()
    addmat2.name = 'mk'
    sen.graData:addMarker(addmat2)
    _info('Now, number of Marker : ' .. sen.graData:getMarkerCount())

    sen.graData:clearMarkers()
    _info('after clean, number of Marker : ' .. sen.graData:getMarkerCount())
  • + function clearOrbits() : _GraphicsData

    清空所有的轨迹。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    local Orbit1 = _Orbit.new()
    Orbit1.name = 'ob'
    sen.graData:addOrbit(Orbit1)
    _info('Now,number of Orbit : ' .. sen.graData:getOrbitCount())

    local Orbit2 = _Orbit.new()
    Orbit2.name = 'ob'
    sen.graData:addOrbit(Orbit2)
    _info('Now,number of Orbit : ' .. sen.graData:getOrbitCount())

    sen.graData:clearOrbits()
    _info('after clean, number of Orbit : ' .. sen.graData:getOrbitCount())
  • + function clearWaters() : _GraphicsData

    清空所有的水。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    local water1 = _Water.new()
    water1.name = 'wt'
    sen.graData:addWater(water1)
    _info('Now,number of Water : ' .. sen.graData:getWaterCount())

    local water2 = _Water.new()
    water2.name = 'wt'
    sen.graData:addWater(water2)
    _info('Now,number of Water : ' .. sen.graData:getWaterCount())

    sen.graData:clearWaters()
    _info('after clean, number of Water : ' .. sen.graData:getWaterCount())
  • + function combine(graData : _GrahpicsData, mat : _Matrix3D) : _GraphicsData

    合并_GraphicsData的数据到当前的_GraphicsData中。

    • 参数
    • resname:被合并的_GrahpicsData对象。
    • mat:合并时对_GrahpicsData所做的变换。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      gpd = _GraphicsData.new()
      mat = _Matrix3D.new(100, 100, 100)
      sen.graData:combine(gpd, mat)
  • + function combine(resname : string, mat : _Matrix3D) : _GraphicsData

    合并_GraphicsData的数据。

    • 参数
    • resname:被合并的_GrahpicsData的资源文件名。
    • mat:合并时对被合并的_GrahpicsData所做的变换。
    • 示例

       _sys:addPath('res')
      local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      mat = _Matrix3D.new(100, 100, 100)
      sen.graData:combine('test.gpd', mat)
  • + function delArea(name : string)
    function delArea(index : uint)
    function delArea(obj : _Object)

    删除已有的区域。

    • 参数
    • name:string区域的名称。
    • index:uint区域的索引。
    • obj:_Object区域的userData。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      sen.graData:delArea(0)
  • + function delCamera(index : uint)

    移除摄像机。

    • 参数
    • index:摄像机的索引值。
    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local camera = _Camera.new()
      camera.name = 'cam'
      sen.graData:addCamera(camera)
      _info('Now,number of Camera : ' .. sen.graData:getCameraCount())
      sen.graData:delCamera(1)
      _info('afte of del, number of Camera : ' .. sen.graData:getCameraCount())
  • + function delFog(index : uint)

    移除雾。

    • 参数
    • index:雾的索引值。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local fog = _Fog.new()
      fog.name = 'fg'
      sen.graData:addFog(fog)
      _info('Now,number of Fog : ' .. sen.graData:getFogCount())
      sen.graData:delFog(1)
      _info('afte of del, number of Fog : ' .. sen.graData:getFogCount())
  • + function delGrass(index : uint)

    移除草。

    • 参数
    • index:草的索引值。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local grass = _Grass.new()
      grass.name = 'gs'
      sen.graData:addGrass(grass)
      _info('Now,number of Grass : ' .. sen.graData:getGrassCount())
      sen.graData:delGrass(1)
      _info('afte of del, number of Grass : ' .. sen.graData:getGrassCount())
  • + function delLight(index : uint)

    移除光。

    • 参数
    • index:光的索引值。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local ambientlight = _AmbientLight.new()
      ambientlight.name = 'ambient'
      sen.graData:addLight(ambientlight)
      _info('Now,number of Light : ' .. sen.graData:getLightCount())
      sen.graData:delLight(1)
      _info('afte of del, number of Light : ' .. sen.graData:getLightCount())
  • + function delMarker(index : uint)

    移除marker。

    • 参数
    • index:marker的索引值。
    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local addmat = _Matrix3D.new()
      addmat.name = 'mk'
      sen.graData:addMarker(addmat)
      _info('Now,number of Marker : ' .. sen.graData:getMarkerCount())
      sen.graData:delMarker(1)
      _info('afte of del, number of Marker : ' .. sen.graData:getMarkerCount())
  • + function delOrbit(index : uint)

    移除轨迹。

    • 参数
    • index:轨迹的索引值。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local Orbit = _Orbit.new()
      Orbit.name = 'ob'
      sen.graData:addOrbit(Orbit)
      _info('Now,number of Orbit : ' .. sen.graData:getOrbitCount())
      sen.graData:delOrbit(1)
      _info('afte of del, number of Orbit : ' .. sen.graData:getOrbitCount())
  • + function delWater(index : uint)

    移除水。

    • 参数
    • index:水的索引值。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local water = _Water.new()
      water.name = 'wt'
      sen.graData:addWater(water)
      _info('Now,number of Water : ' .. sen.graData:getWaterCount())
      sen.graData:delWater(1)
      _info('afte of del, number of Water : ' .. sen.graData:getWaterCount())
  • + function getArea(name : string) : _Area
    function getArea(index : uint) : _Area

    获取指定的区域。

    • 参数
    • name:string。
    • index:uint。
    • 示例

       --TODO
      local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      sen.graData:getArea("")
  • + function getAreaCount() : uint

    获取区域数量。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    local num = sen.graData:getAreaCount()
  • + function getAreaIndex(name : string) : uint

    根据区域名称获取区域索引。

    • 参数
    • name :string 区域名称
    • 示例

       --TODO
      local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local index = sen.graData:getAreaIndex("")
  • + function getAreas() : array

    返回所有的区域。

    • 返回
    • 区域的数组。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local areaArray = {}
      local area1 = _Area.new()
      area1.name = 'ar1'
      table.insert(areaArray, area1)

      local area2= _Area.new()
      area2.name = 'ar2'
      table.insert(areaArray, area2)

      sen.graData:setAreas(areaArray)
      local areaarr = sen.graData:getAreas()
      for i, v in pairs(areaarr ) do
      print(v.name)
      end
  • + function getCamera(index : uint) : _Camera
    function getCamera(index : string) : _Camera

    返回摄像机。

    • 参数
    • index:摄像机的索引值。
    • index:摄像机的名字。

    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local camera = _Camera.new()
      camera.name = 'cam'
      sen.graData:addCamera(camera)
      local mar = sen.graData:getCamera(1)
      print(mar.name)
  • + function getCameraCount() : uint

    返回摄像机的数量。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    _info('Now,number of Camera : ' .. sen.graData:getCameraCount())
  • + function getCameraIndex(name : string) : string

    返回摄像机的索引值。

    • 参数
    • name:摄像机的逻辑名。
    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local camera = _Camera.new()
      camera.name = 'cam'
      sen.graData:addCamera(camera)
      _info('Index of cam : ' .. sen.graData:getCameraIndex('cam'))
  • + function getCameras() : array

    返回所有的摄像机。

    • 返回
    • 摄像机的数组。
    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local cameraArray = {}
      local camera1 = _Camera.new()
      camera1.name = 'cam1'
      table.insert(cameraArray, camera1)

      local camera2 = _Camera.new()
      camera2.name = 'cam2'
      table.insert(cameraArray, camera2)

      sen.graData:setCameras(cameraArray)
      local cameraarr = sen.graData:getCameras()
      for i,v in pairs(cameraarr) do
      print(v.name)
      end
  • + function getFog(index : uint) : _Fog

    返回雾。

    • 参数
    • index:雾的索引值。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local fog = _Fog.new()
      fog.name = 'fg'
      sen.graData:addFog(fog)
      local mar = sen.graData:getFog(1)
      print(mar.name)
  • + function getFogCount() : uint

    返回雾的数量。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    _info('Now,number of Fog : ' .. sen.graData:getFogCount())
  • + function getFogIndex(name : string) : string

    返回雾的索引值。

    • 参数
    • name:雾的逻辑名。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local fog = _Fog.new()
      fog.name = 'fg'
      sen.graData:addFog(fog)
      _info('Index of fg : ' .. sen.graData:getFogIndex('fg'))
  • + function getFogs() : array

    返回所有的雾。

    • 返回
    • 雾的数组。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local fogArray = {}
      local fog1 = _Fog.new()
      fog1.name = 'fg1'
      table.insert(fogArray, fog1)

      local fog2 = _Fog.new()
      fog2.name = 'fg2'
      table.insert(fogArray, fog2)

      sen.graData:setFogs(fogArray)
      local fogarr = sen.graData:getFogs()
      for i, v in pairs(fogarr) do
      print(v.name)
      end
  • + function getGrass(index : uint) : _Grass

    返回草。

    • 参数
    • index:草的索引值。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local water = _Grass.new()
      water.name = 'fg'
      sen.graData:addGrass(water)
      local mar = sen.graData:getGrass(1)
      print(mar.name)
  • + function getGrassCount() : uint

    获取草数量。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    local num = sen.graData:getGrassCount()
  • + function getGrasses() : array

    返回所有的草。

    • 返回
    • 草的数组。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local grassArray = {}
      local grass1 = _Grass.new()
      grass1.name = 'gs1'
      table.insert(grassArray, grass1)

      local grass2 = _Grass.new()
      grass2.name = 'gs2'
      table.insert(grassArray, grass2)

      sen.graData:setGrasses(grassArray)
      local grassarr = sen.graData:getGrasses()
      for i, v in pairs(grassarr) do
      print(v.name)
      end
  • + function getGrassIndex(name : string) : uint

    根据草名称获取草索引。

    • 参数
    • name :string 草名称
    • 示例

       --TODO
      local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local index = sen.graData:getGrassIndex("")
  • + function getLight(index : uint) : _AmbientLight
    function getLight(index : uint) : _PointLight
    function getLight(index : uint) : _SkyLight

    返回光。

    • 参数
    • index:光的索引值。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local ambientlight = _AmbientLight.new()
      ambientlight.name = 'ambient'
      sen.graData:addLight(ambientlight)
      local mar1 = sen.graData:getLight(1)
      print(mar1.name)

      local pointlight = _PointLight.new()
      pointlight.name = 'point'
      sen.graData:addLight(pointlight)
      local mar2 = sen.graData:getLight(2)
      print(mar2.name)

      local skylight = _SkyLight.new()
      skylight.name = 'sky'
      sen.graData:addLight(skylight)
      local mar3 = sen.graData:getLight(3)
      print(mar3.name)
  • + function getLightCaster(i : uint)

    返回指定光照开启投射是否成功 --TODO。

    • 参数
    • i:指定的index。
    • 示例

       sen.graData:update()
      sen.graData:prepareLighten()
      sen.graData:getLightCaster(1)
  • + function getLightCount() : uint

    返回光的数量。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    _info('Now,number of Light : ' .. sen.graData:getLightCount())
  • + function getLightIndex(name : string) : string

    返回光的索引值。

    • 参数
    • name:光的逻辑名。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local ambientlight = _AmbientLight.new()
      ambientlight.name = 'ambient'
      sen.graData:addLight(ambientlight)
      _info('Index of ambient : ' .. sen.graData:getLightIndex('ambient'))
  • + function getLights() : array

    返回所有的光。

    • 返回
    • 光的数组。数组中的每一个元素是一个 _AmbientLight_SkyLight_PointLight 对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local lightArray = {}
      local ambientlight = _AmbientLight.new()
      ambientlight.name = 'ambient'
      table.insert(lightArray, ambientlight)

      local pointlight = _PointLight.new()
      pointlight.name = 'point'
      table.insert(lightArray, pointlight)

      local skylight = _SkyLight.new()
      skylight.name = 'sky'
      table.insert(lightArray, skylight)

      sen.graData:setLights(lightArray)
      local lightarr = sen.graData:getLights()
      for i,v in pairs(lightarr) do
      print(v.name)
      end
  • + function getMarker(index : uint) : _Matrix3D

    返回marker。

    • 参数
    • index:marker的索引值。
    • 示例

       msh = _Mesh.new('sword.msh')
      dum = msh.graData:getMarker('dum_w')
  • + function getMarkerCount() : uint

    返回marker的数量。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    _info('Now,number of Marker : ' .. sen.graData:getMarkerCount())
  • + function getMarkerIndex(name : string) : string

    返回marker的索引值。

    • 参数
    • name:marker的逻辑名。
    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local addmat = _Matrix3D.new()
      addmat.name = 'mk'
      sen.graData:addMarker(addmat)
      _info('Index of mk : ' .. sen.graData:getMarkerIndex('mk'))
  • + function getMarkers() : array

    返回所有的marker。

    • 返回
    • _Matrix3D的数组。
    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local markerArraymat = {}
      local markermat1 = _Matrix3D.new()
      markermat1.name = 'markermat1'
      markermat1:setTranslation(100, 100, 100)
      table.insert(markerArraymat, markermat1)
      local markermat2 = _Matrix3D.new()

      markermat2.name = 'markermat2'
      markermat2:setTranslation(200, 200, 200)
      table.insert(markerArraymat, markermat2)
      sen.graData:setMarkers(markerArraymat)

      local markerarr = sen.graData:getMarkers()
      for i ,v in pairs(markerarr) do
      local p = v:getTranslation()
      print(i, p.x, p.y, p.z)
      end
  • + function getMarkerTransform(index : uint) : _Matrix3D

    返回marker的变换矩阵。

    • 参数
    • index:marker的索引值。
    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local addmat = _Matrix3D.new()
      addmat.name = 'mk'
      sen.graData:addMarker(addmat)
      local mar = sen.graData:getMarkerTransform(1)
      p = mar:getTranslation()
      print(p.x, p.y, p.z)
  • + function getOrbit(index : uint) : _Orbit

    返回轨迹。

    • 参数
    • index:轨迹的索引值。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local Orbit = _Orbit.new()
      Orbit.name = 'ob'
      sen.graData:addOrbit(Orbit)
      local mar = sen.graData:getOrbit(1)
      print(mar.name)
  • + function getOrbitCount() : uint

    返回轨迹的数量。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    _info('Now,number of Orbit : ' .. sen.graData:getOrbitCount())
  • + function getOrbitIndex(name : string) : string

    返回轨迹的索引值。

    • 参数
    • name:轨迹的逻辑名。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local Orbit = _Orbit.new()
      Orbit.name = 'ob'
      sen.graData:addOrbit(Orbit)
      _info('Index of ob : ' .. sen.graData:getOrbitIndex('ob'))
  • + function getOrbits() : array

    返回所有的轨迹。

    • 返回
    • 轨迹的数组。
    • 示例
    • List item

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local OrbitArray = {}
      local Orbit1 = _Orbit.new()
      Orbit1.name = 'ob1'
      table.insert(OrbitArray, Orbit1)

      local Orbit2 = _Orbit.new()
      Orbit2.name = 'ob2'
      table.insert(OrbitArray, Orbit2)

      sen.graData:setOrbits(OrbitArray)
      local Orbitarr = sen.graData:getOrbits()
      for i, v in pairs(Orbitarr) do
      print(v.name)
      end
  • + function getWater(index : uint) : _Water

    返回水。

    • 参数
    • index:水的索引值。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local water = _Water.new()
      water.name = 'fg'
      sen.graData:addWater(water)
      local mar = sen.graData:getWater(1)
      print(mar.name)
  • + function getWaterCount() : uint

    获取水数量。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    local num = sen.graData:getWaterCount()
  • + function getWaterIndex(name : string) : uint

    根据水的名称获取水的索引。

    • 参数
    • name :string 水名称
    • 示例

       --TODO
      local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      local index = sen.graData:getWaterIndex("")
  • + function getWaters() : array

    返回所有的水。

    • 返回
    • 水的数组。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local waterArray = {}
      local water1 = _Water.new()
      water1.name = 'wt1'
      table.insert(waterArray, water1)

      local water2 = _Water.new()
      water2.name = 'wt2'
      table.insert(waterArray, water2)

      sen.graData:setWaters(waterArray)
      local waterarr = sen.graData:getWaters()
      for i, v in pairs(waterarr) do
      print(v.name)
      end
  • + function prepareLighten()

    准备烘焙。

    • 示例

       sen.graData:update()
      sen.graData:prepareLighten()
  • + function save()

    保存。

    示例

        local sen = _Scene.new('test.sen')   
    _app:onIdle(function(e)
    sen:render()
    end)
    sen.graData:save()
  • + function setAreas(areaArray : array)

    设置所有的区域。

    • 参数
    • areaArray:区域的数组。数组中的每一个元素是一个_Area对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      local areaArray = {}
      local area1 = _Area.new()
      area1.name = 'ar1'
      table.insert(areaArray, area1)

      local area2= _Area.new()
      area2.name = 'ar2'
      table.insert(areaArray, area2)

      sen.graData:setAreas(areaArray)
      local areaarr = sen.graData:getAreas()
      for i, v in pairs(areaarr ) do
      print(v.name)
      end
  • + function setCameras(cameraArray : array)

    设置所有的摄像机。

    • 参数
    • cameraArray:摄像机的数组。数组中的每一个元素是一个_Camera对象。
    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      _info('now, number of Camera : ' .. sen.graData:getMarkerCount())
      local cameraArray = {}
      local camera1 = _Camera.new()
      camera1.name = 'cam1'
      table.insert(cameraArray, camera1)

      local camera2 = _Camera.new()
      camera2.name = 'cam2'
      table.insert(cameraArray, camera2)

      sen.graData:setCameras(cameraArray)
      _info('After set cameras, number of Camera : ' .. sen.graData:getCameraCount())
  • + function setFogs(fogArray : array)

    设置所有的雾。

    • 参数
    • fogArray:雾的数组。数组中的每一个元素是一个_Fog对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      _info('Now,number of Fog : ' .. sen.graData:getFogCount())
      local fogArray = {}
      local fog1 = _Fog.new()
      fog1.name = 'fg1'
      table.insert(fogArray, fog1)

      local fog2 = _Fog.new()
      fog2.name = 'fg2'
      table.insert(fogArray, fog2)

      sen.graData:setFogs(fogArray)
      _info('after set fogs, number of Fog : ' .. sen.graData:getFogCount())
  • + function setGrasses(grassArray : array)

    设置所有的草。

    • 参数
    • grassArray:草的数组。数组中的每一个元素是一个_Grass对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      _info('Now,number of Grass : ' .. sen.graData:getGrassCount())
      local grassArray = {}
      local grass1 = _Grass.new()
      grass1.name = 'gs1'
      table.insert(grassArray, grass1)

      local grass2 = _Grass.new()
      grass2.name = 'gs2'
      table.insert(grassArray, grass2)

      sen.graData:setGrasses(grassArray)
      _info('after set grasss, number of Grass : ' .. sen.graData:getGrassCount())
  • + function setLightCaster(i : uint, cast : bool)

    设置指定的光照是否投射阴影。

    • 参数
    • i : 指定的index。
    • cast : 是否投射阴影

    • 示例

       sen.graData:update()
      sen.graData:prepareLighten()
      sen.graData:setLightCaster(1, true)
  • + function setLights(lightArray : array)

    设置所有的光。

    • 参数
    • lightArray:光的数组。数组中的每一个元素是一个 _AmbientLight_SkyLight_PointLight 对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      _info('Now,number of Light : ' .. sen.graData:getLightCount())
      local lightArray = {}
      local ambientlight = _AmbientLight.new()
      ambientlight.name = 'ambient'
      table.insert(lightArray, ambientlight)

      local pointlight = _PointLight.new()
      pointlight.name = 'point'
      table.insert(lightArray, pointlight)

      local skylight = _SkyLight.new()
      skylight.name = 'sky'
      table.insert(lightArray, skylight)

      sen.graData:setLights(lightArray)
      _info('after set lights, number of Light : ' .. sen.graData:getLightCount())
  • + function setMarkers(markerArray : array)

    设置所有的marker。

    • 参数
    • markerArray:marker的数组。数组中的每一个元素是一个object,其属性name为marker的逻辑名,属性transform为marker的变换矩阵。
    • 示例

       local sen = _Scene.new('test.sen')
      _app:onIdle(function(e)
      sen:render()
      end)
      _info('now, number of Marker : ' .. sen.graData:getMarkerCount())
      local markerArraymat = {}
      local markermat1 = _Matrix3D.new()
      markermat1.name = 'markermat1'
      markermat1:setTranslation(100, 100, 100)
      table.insert(markerArraymat, markermat1)

      local markermat2 = _Matrix3D.new()
      markermat2.name = 'markermat2'
      markermat2:setTranslation(200, 200, 200)
      table.insert(markerArraymat, markermat2)

      sen.graData:setMarkers(markerArraymat)
      _info('After set markers, number of Marker : ' .. sen.graData:getMarkerCount())
  • + function setOrbits(orbitArray) : array

    设置所有的轨迹。

    • 参数
    • orbitArray:轨迹的数组。数组中的每一个元素是一个 _Orbit对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      _info('Now,number of Orbit : ' .. sen.graData:getOrbitCount())
      local OrbitArray = {}
      local Orbit1 = _Orbit.new()
      Orbit1.name = 'ob1'
      table.insert(OrbitArray, Orbit1)

      local Orbit2 = _Orbit.new()
      Orbit2.name = 'ob2'
      table.insert(OrbitArray, Orbit2)

      sen.graData:setOrbits(OrbitArray)
      _info('after set Orbits, number of Orbit : ' .. sen.graData:getOrbitCount())
  • + function setWaters(waterArray : array)

    设置所有的水。

    • 参数
    • waterArray:水的数组。数组中的每一个元素是一个_Water对象。
    • 示例

       local sen = _Scene.new('test.sen')   
      _app:onIdle(function(e)
      sen:render()
      end)
      _info('Now,number of Water : ' .. sen.graData:getWaterCount())
      local waterArray = {}
      local water1 = _Water.new()
      water1.name = 'wt1'
      table.insert(waterArray, water1)

      local water2 = _Water.new()
      water2.name = 'wt2'
      table.insert(waterArray, water2)

      sen.graData:setWaters(waterArray)
      _info('after set waters, number of Water : ' .. sen.graData:getWaterCount())
  • + function update() : _GraphicsData

    更新GraphicsData。

    • 示例

       _app:onKeyDown(function(key)
      if key == _System.KeySpace then
      sen.graData:update()
      end
      end)
问题反馈(登录才可以发表哦!)