GE Lua Documentation

Press F to search!

fromTable

Definition


-- @/=[C]:-1
function fromTable(...)

Callers

@/lua/ge/extensions/ui/liveryEditor/layers/decal.lua
  local r, g, b = unpack(api.getDecalColor():toTable())
  api.setDecalColor(Point4F.fromTable({r, g, b, show and 1 or 0}))
end

  local color = params and params.color and Point4F.fromTable(params.color) or Point4F(1, 1, 1, 1)
  api.setDecalColor(color)
@/lua/ge/extensions/ui/liveryEditor/layers/cursor.lua
M.setColor = function(color)
  api.setDecalColor(Point4F.fromTable(color))
  notifyListeners()
    color[4] = 1
    api.setDecalColor(Point4F.fromTable(color))
  end
@/lua/ge/extensions/ui/liveryEditor/layerEdit.lua
  local r, g, b = unpack(api.getDecalColor():toTable())
  api.setDecalColor(Point4F.fromTable({r, g, b, show and 1 or 0}))
end
@/lua/ge/extensions/editor/dynamicDecals/layerTypes/fill.lua
  if widgets.draw(layer.color:toTable(), api.propertiesMap["fill_color"], widgetId, editor.getTempBool_BoolBool(false)) then
    layer.color = Point4F.fromTable(api.propertiesMap["fill_color"].value)
  end
  if editor.getTempBool_BoolBool() == true then
    layer.color = Point4F.fromTable(api.propertiesMap["fill_color"].value)
    api.setLayer(layer, true)
  if widgets.draw(api.getFillLayerColor():toTable(), api.propertiesMap["fill_color"], guiId) then
    api.setFillLayerColor(Point4F.fromTable(api.propertiesMap["fill_color"].value))
  end
@/lua/ge/extensions/ui/liveryEditor/layers/fill.lua
  if #color == 4 then
    layer.color = Point4F.fromTable(color)
  elseif #color == 3 then
@/lua/ge/extensions/editor/dynamicDecals/layerTypes/textureFill.lua
  if widgets.draw(layer.color:toTable(), api.propertiesMap["color"], widgetId, editor.getTempBool_BoolBool(false)) then
    layer.color = Point4F.fromTable(api.propertiesMap["color"].value)
  end
  if editor.getTempBool_BoolBool() == true then
    layer.color = Point4F.fromTable(api.propertiesMap["color"].value)
    api.setLayer(layer, true)
  if widgets.draw(api.getFillLayerColor():toTable(), api.propertiesMap["textureFill_color"], guiId) then
    api.setFillLayerColor(Point4F.fromTable(api.propertiesMap["textureFill_color"].value))
  end
  if widgets.draw(api.getTextureFillLayerScale():toTable(), api.propertiesMap["scale"], guiId) then
    api.setTextureFillLayerScale(Point2F.fromTable(api.propertiesMap["scale"].value))
  end
  if widgets.draw(api.getTextureFillOffset():toTable(), api.propertiesMap["offset"], guiId) then
    api.setTextureFillOffset(Point2F.fromTable(api.propertiesMap["offset"].value))
  end
@/lua/ge/extensions/editor/gen/mesh.lua
				local mtx = MatrixF(true)
				mtx:setColumn4F(0, Point4F.fromTable({acell[1],acell[5],acell[9],0}))
				mtx:setColumn4F(1, Point4F.fromTable({acell[2],acell[6],acell[10],0}))
				mtx:setColumn4F(0, Point4F.fromTable({acell[1],acell[5],acell[9],0}))
				mtx:setColumn4F(1, Point4F.fromTable({acell[2],acell[6],acell[10],0}))
				mtx:setColumn4F(2, Point4F.fromTable({acell[3],acell[7],acell[11],0}))
				mtx:setColumn4F(1, Point4F.fromTable({acell[2],acell[6],acell[10],0}))
				mtx:setColumn4F(2, Point4F.fromTable({acell[3],acell[7],acell[11],0}))
				mtx:setColumn4F(3, Point4F.fromTable({acell[4],acell[8],acell[12],0}))
				mtx:setColumn4F(2, Point4F.fromTable({acell[3],acell[7],acell[11],0}))
				mtx:setColumn4F(3, Point4F.fromTable({acell[4],acell[8],acell[12],0}))
]]
@/lua/ge/extensions/ui/liveryEditor/layers/group.lua
  -- for k, childLayer in ipairs(layer.children) do
  --   childLayer.color = Point4F.fromTable(rgbaArray)
  --   api.setLayer(childLayer, true)
  -- end
  -- local color = Point4F.fromTable(rgbaArray)
  if not layer.properties.color then
@/lua/ge/extensions/ui/liveryEditor.lua
  local r, g, b = unpack(api.getDecalColor():toTable())
  api.setDecalColor(Point4F.fromTable({r, g, b, show and 1 or 0}))
end
@/lua/ge/extensions/editor/api/dynamicDecals.lua
    lyr["alphaMaskRotation"] = layer.alphaMaskRotation or 0.0
    lyr["alphaMaskScale"] = (layer.alphaMaskScale and Point2F.fromTable(layer.alphaMaskScale) or Point2F(1,1))
    lyr["alphaMaskOffset"] = (layer.alphaMaskOffset and Point2F.fromTable(layer.alphaMaskOffset) or Point2F(0,0))
    lyr["alphaMaskScale"] = (layer.alphaMaskScale and Point2F.fromTable(layer.alphaMaskScale) or Point2F(1,1))
    lyr["alphaMaskOffset"] = (layer.alphaMaskOffset and Point2F.fromTable(layer.alphaMaskOffset) or Point2F(0,0))
    lyr["blendMode"] = layer.blendMode
    lyr["camPosition"] = vec3(layer.camPosition.x, layer.camPosition.y, layer.camPosition.z)
    lyr["color"] = Point4F.fromTable(layer.color)
    lyr["colorPaletteMapId"] = layer.colorPaletteMapId or 0
    lyr["colorPaletteMapId"] = layer.colorPaletteMapId or 0
    lyr["colorTextureScale"] = (layer.colorTextureScale and Point2F.fromTable(layer.colorTextureScale) or Point2F(1,1))
    lyr["cursorPosScreenUv"] = layer.cursorPosScreenUv
    lyr["decalScale"] = vec3(layer.decalScale.x, layer.decalScale.y, layer.decalScale.z)
    lyr["decalSkew"] = Point2F.fromTable(layer.decalSkew)
    lyr["decalUv"] = Point2F.fromTable(layer.decalUv)
    lyr["decalSkew"] = Point2F.fromTable(layer.decalSkew)
    lyr["decalUv"] = Point2F.fromTable(layer.decalUv)
    lyr["decalFontPath"] = layer.decalFontPath or "/"
    lyr["decalUseGradientColor"] = layer.decalUseGradientColor
    lyr["decalGradientColorTopLeft"] = ColorI.fromTable(layer.decalGradientColorTopLeft)
    lyr["decalGradientColorTopRight"] = ColorI.fromTable(layer.decalGradientColorTopRight)
    lyr["decalGradientColorTopLeft"] = ColorI.fromTable(layer.decalGradientColorTopLeft)
    lyr["decalGradientColorTopRight"] = ColorI.fromTable(layer.decalGradientColorTopRight)
    lyr["decalGradientColorBottomLeft"] = ColorI.fromTable(layer.decalGradientColorBottomLeft)
    lyr["decalGradientColorTopRight"] = ColorI.fromTable(layer.decalGradientColorTopRight)
    lyr["decalGradientColorBottomLeft"] = ColorI.fromTable(layer.decalGradientColorBottomLeft)
    lyr["decalGradientColorBottomRight"] = ColorI.fromTable(layer.decalGradientColorBottomRight)
    lyr["decalGradientColorBottomLeft"] = ColorI.fromTable(layer.decalGradientColorBottomLeft)
    lyr["decalGradientColorBottomRight"] = ColorI.fromTable(layer.decalGradientColorBottomRight)
    lyr["metallicIntensity"] = layer.metallicIntensity or 1.0
    lyr["useSurfaceNormal"] = layer.useSurfaceNormal == nil and true or layer.useSurfaceNormal
    mat:setColumn4F(0, Point4F.fromTable(layer.viewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.viewToScreen[2]))
    mat:setColumn4F(0, Point4F.fromTable(layer.viewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.viewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.viewToScreen[3]))
    mat:setColumn4F(1, Point4F.fromTable(layer.viewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.viewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.viewToScreen[4]))
    mat:setColumn4F(2, Point4F.fromTable(layer.viewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.viewToScreen[4]))
    lyr["viewToScreen"] = mat:copy()
    lyr["viewToScreen"] = mat:copy()
    mat:setColumn4F(0, Point4F.fromTable(layer.worldToViewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.worldToViewToScreen[2]))
    mat:setColumn4F(0, Point4F.fromTable(layer.worldToViewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.worldToViewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.worldToViewToScreen[3]))
    mat:setColumn4F(1, Point4F.fromTable(layer.worldToViewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.worldToViewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.worldToViewToScreen[4]))
    mat:setColumn4F(2, Point4F.fromTable(layer.worldToViewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.worldToViewToScreen[4]))
    lyr["worldToViewToScreen"] = mat:copy()
    lyr["sdfOutlineSoftness"] = layer.sdfOutlineSoftness or 0.1
    lyr["sdfOutlineColor"] = ColorI.fromTable(layer.sdfOutlineColor or {255,0,0,255})
  elseif layer.type == M.layerTypes.fill then
    lyr["blendMode"] = layer.blendMode
    lyr["color"] = Point4F.fromTable(layer.color)
    lyr["colorPaletteMapId"] = layer.colorPaletteMapId or 1
    lyr["blendMode"] = layer.blendMode
    lyr["color"] = Point4F.fromTable(layer.color)
    lyr["colorPaletteMapId"] = layer.colorPaletteMapId or 1
    lyr["colorPaletteMapId"] = layer.colorPaletteMapId or 1
    lyr["scale"] = (layer.scale and Point2F.fromTable(layer.scale) or Point2F(1,1))
    lyr["offset"] = (layer.offset and Point2F.fromTable(layer.offset) or Point2F(0,0))
    lyr["scale"] = (layer.scale and Point2F.fromTable(layer.scale) or Point2F(1,1))
    lyr["offset"] = (layer.offset and Point2F.fromTable(layer.offset) or Point2F(0,0))
    lyr["type"] = layer.type
    lyr["alphaMaskRotation"] = layer.alphaMaskRotation or 0.0
    lyr["alphaMaskScale"] = (layer.alphaMaskScale and Point2F.fromTable(layer.alphaMaskScale) or Point2F(1,1))
    lyr["alphaMaskOffset"] = (layer.alphaMaskOffset and Point2F.fromTable(layer.alphaMaskOffset) or Point2F(0,0))
    lyr["alphaMaskScale"] = (layer.alphaMaskScale and Point2F.fromTable(layer.alphaMaskScale) or Point2F(1,1))
    lyr["alphaMaskOffset"] = (layer.alphaMaskOffset and Point2F.fromTable(layer.alphaMaskOffset) or Point2F(0,0))
    lyr["blendMode"] = layer.blendMode
    lyr["camPosition"] = vec3(layer.camPosition.x, layer.camPosition.y, layer.camPosition.z)
    lyr["color"] = Point4F.fromTable(layer.color)
    lyr["colorPaletteMapId"] = layer.colorPaletteMapId or 0
    lyr["colorPaletteMapId"] = layer.colorPaletteMapId or 0
    lyr["colorTextureScale"] = (layer.colorTextureScale and Point2F.fromTable(layer.colorTextureScale) or Point2F(1,1))
    lyr["decalAlphaTexturePath"] = layer.decalAlphaTexturePath
    lyr["decalScale"] = vec3(layer.decalScale.x, layer.decalScale.y, layer.decalScale.z)
    lyr["decalSkew"] = Point2F.fromTable(layer.decalSkew)
    lyr["decalUv"] = Point2F.fromTable(layer.decalUv)
    lyr["decalSkew"] = Point2F.fromTable(layer.decalSkew)
    lyr["decalUv"] = Point2F.fromTable(layer.decalUv)
    lyr["decalFontPath"] = layer.decalFontPath or "/"
    lyr["decalUseGradientColor"] = layer.decalUseGradientColor
    lyr["decalGradientColorTopLeft"] = ColorI.fromTable(layer.decalGradientColorTopLeft)
    lyr["decalGradientColorTopRight"] = ColorI.fromTable(layer.decalGradientColorTopRight)
    lyr["decalGradientColorTopLeft"] = ColorI.fromTable(layer.decalGradientColorTopLeft)
    lyr["decalGradientColorTopRight"] = ColorI.fromTable(layer.decalGradientColorTopRight)
    lyr["decalGradientColorBottomLeft"] = ColorI.fromTable(layer.decalGradientColorBottomLeft)
    lyr["decalGradientColorTopRight"] = ColorI.fromTable(layer.decalGradientColorTopRight)
    lyr["decalGradientColorBottomLeft"] = ColorI.fromTable(layer.decalGradientColorBottomLeft)
    lyr["decalGradientColorBottomRight"] = ColorI.fromTable(layer.decalGradientColorBottomRight)
    lyr["decalGradientColorBottomLeft"] = ColorI.fromTable(layer.decalGradientColorBottomLeft)
    lyr["decalGradientColorBottomRight"] = ColorI.fromTable(layer.decalGradientColorBottomRight)
    lyr["interpolationSteps"] = layer.interpolationSteps or 2
    local mat = MatrixF(true)
    mat:setColumn4F(0, Point4F.fromTable(layer.viewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.viewToScreen[2]))
    mat:setColumn4F(0, Point4F.fromTable(layer.viewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.viewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.viewToScreen[3]))
    mat:setColumn4F(1, Point4F.fromTable(layer.viewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.viewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.viewToScreen[4]))
    mat:setColumn4F(2, Point4F.fromTable(layer.viewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.viewToScreen[4]))
    lyr["viewToScreen"] = mat
    mat = MatrixF(true)
    mat:setColumn4F(0, Point4F.fromTable(layer.worldToViewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.worldToViewToScreen[2]))
    mat:setColumn4F(0, Point4F.fromTable(layer.worldToViewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.worldToViewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.worldToViewToScreen[3]))
    mat:setColumn4F(1, Point4F.fromTable(layer.worldToViewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.worldToViewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.worldToViewToScreen[4]))
    mat:setColumn4F(2, Point4F.fromTable(layer.worldToViewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.worldToViewToScreen[4]))
    lyr["worldToViewToScreen"] = mat
    lyr["sdfOutlineSoftness"] = layer.sdfOutlineSoftness or 0.1
    lyr["sdfOutlineColor"] = ColorI.fromTable(layer.sdfOutlineColor or {255,0,0,255})
  elseif layer.type == M.layerTypes.path then
    lyr["alphaMaskRotation"] = layer.alphaMaskRotation or 0.0
    lyr["alphaMaskScale"] = (layer.alphaMaskScale and Point2F.fromTable(layer.alphaMaskScale) or Point2F(1,1))
    lyr["alphaMaskOffset"] = (layer.alphaMaskOffset and Point2F.fromTable(layer.alphaMaskOffset) or Point2F(0,0))
    lyr["alphaMaskScale"] = (layer.alphaMaskScale and Point2F.fromTable(layer.alphaMaskScale) or Point2F(1,1))
    lyr["alphaMaskOffset"] = (layer.alphaMaskOffset and Point2F.fromTable(layer.alphaMaskOffset) or Point2F(0,0))
    lyr["blendMode"] = layer.blendMode
    lyr["camPosition"] = vec3(layer.camPosition.x, layer.camPosition.y, layer.camPosition.z)
    lyr["color"] = Point4F.fromTable(layer.color)
    lyr["colorPaletteMapId"] = layer.colorPaletteMapId or 0
    lyr["colorPaletteMapId"] = layer.colorPaletteMapId or 0
    lyr["colorTextureScale"] = (layer.colorTextureScale and Point2F.fromTable(layer.colorTextureScale) or Point2F(1,1))
    lyr["decalAlphaTexturePath"] = layer.decalAlphaTexturePath
    lyr["decalScale"] = vec3(layer.decalScale.x, layer.decalScale.y, layer.decalScale.z)
    lyr["decalSkew"] = Point2F.fromTable(layer.decalSkew)
    lyr["decalUv"] = Point2F.fromTable(layer.decalUv)
    lyr["decalSkew"] = Point2F.fromTable(layer.decalSkew)
    lyr["decalUv"] = Point2F.fromTable(layer.decalUv)
    lyr["decalFontPath"] = layer.decalFontPath or "/"
    lyr["decalUseGradientColor"] = layer.decalUseGradientColor
    lyr["decalGradientColorTopLeft"] = ColorI.fromTable(layer.decalGradientColorTopLeft)
    lyr["decalGradientColorTopRight"] = ColorI.fromTable(layer.decalGradientColorTopRight)
    lyr["decalGradientColorTopLeft"] = ColorI.fromTable(layer.decalGradientColorTopLeft)
    lyr["decalGradientColorTopRight"] = ColorI.fromTable(layer.decalGradientColorTopRight)
    lyr["decalGradientColorBottomLeft"] = ColorI.fromTable(layer.decalGradientColorBottomLeft)
    lyr["decalGradientColorTopRight"] = ColorI.fromTable(layer.decalGradientColorTopRight)
    lyr["decalGradientColorBottomLeft"] = ColorI.fromTable(layer.decalGradientColorBottomLeft)
    lyr["decalGradientColorBottomRight"] = ColorI.fromTable(layer.decalGradientColorBottomRight)
    lyr["decalGradientColorBottomLeft"] = ColorI.fromTable(layer.decalGradientColorBottomLeft)
    lyr["decalGradientColorBottomRight"] = ColorI.fromTable(layer.decalGradientColorBottomRight)
    lyr["interpolationSteps"] = layer.interpolationSteps or 5
    local mat = MatrixF(true)
    mat:setColumn4F(0, Point4F.fromTable(layer.viewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.viewToScreen[2]))
    mat:setColumn4F(0, Point4F.fromTable(layer.viewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.viewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.viewToScreen[3]))
    mat:setColumn4F(1, Point4F.fromTable(layer.viewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.viewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.viewToScreen[4]))
    mat:setColumn4F(2, Point4F.fromTable(layer.viewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.viewToScreen[4]))
    lyr["viewToScreen"] = mat
    mat = MatrixF(true)
    mat:setColumn4F(0, Point4F.fromTable(layer.worldToViewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.worldToViewToScreen[2]))
    mat:setColumn4F(0, Point4F.fromTable(layer.worldToViewToScreen[1]))
    mat:setColumn4F(1, Point4F.fromTable(layer.worldToViewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.worldToViewToScreen[3]))
    mat:setColumn4F(1, Point4F.fromTable(layer.worldToViewToScreen[2]))
    mat:setColumn4F(2, Point4F.fromTable(layer.worldToViewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.worldToViewToScreen[4]))
    mat:setColumn4F(2, Point4F.fromTable(layer.worldToViewToScreen[3]))
    mat:setColumn4F(3, Point4F.fromTable(layer.worldToViewToScreen[4]))
    lyr["worldToViewToScreen"] = mat
    lyr["sdfOutlineSoftness"] = layer.sdfOutlineSoftness or 0.1
    lyr["sdfOutlineColor"] = ColorI.fromTable(layer.sdfOutlineColor or {255,0,0,255})
  elseif layer.type == M.layerTypes.linkedSet then
@/lua/ge/extensions/ui/liveryEditor/layerAction.lua
  local r, g, b = unpack(api.getDecalColor():toTable())
  api.setDecalColor(Point4F.fromTable({r, g, b, show and 1 or 0}))
end
  local r, g, b = unpack(layer.color:toTable())
  layer.color = Point4F.fromTable({r, g, b, show and 1 or 0})
  api.setLayer(layer, true)
@/lua/ge/extensions/editor/dynamicDecals/layerTypes/brushStroke.lua
      if editor.uiColorEdit4(string.format("##%s_%s_%s", layer.uid, guiId, "color"), editor.getTempFloatArray4_TableTable(layer.color:toTable()), nil, editor.getTempBool_BoolBool(false)) then
        layer.color = Point4F.fromTable(editor.getTempFloatArray4_TableTable())
      end
@/lua/ge/extensions/editor/dynamicDecals/layerTypes/decal.lua
    if widgets.draw(api.getSdfOutlineColor():toTable(), api.propertiesMap["sdfOutlineColor"], guiId) then
      api.setSdfOutlineColor(ColorI.fromTable(api.propertiesMap["sdfOutlineColor"].value))
    end
  if widgets.draw(api.getDecalSkew():toTable(), api.propertiesMap["decalSkew"], guiId) then
    api.setDecalSkew(Point2F.fromTable(api.propertiesMap["decalSkew"].value))
  end
    if widgets.draw(api.getColorTextureScale():toTable(), api.propertiesMap["colorTextureScale"], guiId) then
      api.setColorTextureScale(Point2F.fromTable(api.propertiesMap["colorTextureScale"].value))
    end
    if widgets.draw(api.getDecalColor():toTable(), api.propertiesMap["color"], guiId) then
      api.setDecalColor(Point4F.fromTable(api.propertiesMap["color"].value))
    end
    if widgets.draw(api.getAlphaMaskScale():toTable(), api.propertiesMap["alphaMaskScale"], guiId) then
      api.setAlphaMaskScale(Point2F.fromTable(api.propertiesMap["alphaMaskScale"].value))
    end
    if widgets.draw(api.getAlphaMaskOffset():toTable(), api.propertiesMap["alphaMaskOffset"], guiId) then
      api.setAlphaMaskOffset(Point2F.fromTable(api.propertiesMap["alphaMaskOffset"].value))
    end
@/lua/ge/extensions/ui/liveryEditor/layers/decals.lua
  local r, g, b = unpack(api.getDecalColor():toTable())
  api.setDecalColor(Point4F.fromTable({r, g, b, show and 1 or 0}))
end
M.setColor = function(layer, color)
  layer.color = Point4F.fromTable(color)
  api.setLayer(layer, true)
@/lua/ge/extensions/ui/liveryEditor/editMode.lua
--   end
--   api.setDecalColor(Point4F.fromTable(color))
--   M.editModeStateChanged()
@/lua/ge/extensions/editor/dynamicDecals/brushes.lua
  if prop.type == api.types.Point2F then
    return Point2F.fromTable(value or prop.default)
  elseif prop.type == api.types.Point3F then
  elseif prop.type == api.types.Point4F then
    return Point4F.fromTable(value or prop.default)
  elseif prop.type == api.types.ColorI then
  elseif prop.type == api.types.ColorI then
    return ColorI.fromTable(value or prop.default)
  end
  -- api.setAlphaMaskRotation(brush.alphaMaskRotation or 0.0)
  -- api.setAlphaMaskScale(Point2F.fromTable(brush.alphaMaskScale or {1.0, 1.0}))
  -- api.setBlendMode(getValueOrDefault("blendMode", brush.blendMode))
  -- api.setBlendMode(getValueOrDefault("blendMode", brush.blendMode))
  -- api.setDecalColor(Point4F.fromTable(getValueOrDefault("color", brush.color)))
  -- api.setColorPaletteMapId(getValueOrDefault("colorPaletteMapId", brush.colorPaletteMapId))
  -- api.setColorPaletteMapId(getValueOrDefault("colorPaletteMapId", brush.colorPaletteMapId))
  -- api.setColorTextureScale(Point2F.fromTable(brush.colorTextureScale or {1.0, 1.0}))
  -- api.setDecalTexturePath("alpha", getValueOrDefault("decalAlphaTexturePath", brush.decalAlphaTexturePath))
  -- api.setDecalTexturePath("color", getValueOrDefault("decalColorTexturePath", brush.decalColorTexturePath))
  -- api.setGradientColorTopLeft(ColorI.fromTable(getValueOrDefault("decalGradientColorTopLeft", brush.decalGradientColorTopLeft)))
  -- api.setGradientColorTopRight(ColorI.fromTable(getValueOrDefault("decalGradientColorTopRight", brush.decalGradientColorTopRight)))
  -- api.setGradientColorTopLeft(ColorI.fromTable(getValueOrDefault("decalGradientColorTopLeft", brush.decalGradientColorTopLeft)))
  -- api.setGradientColorTopRight(ColorI.fromTable(getValueOrDefault("decalGradientColorTopRight", brush.decalGradientColorTopRight)))
  -- api.setGradientColorBottomLeft(ColorI.fromTable(getValueOrDefault("decalGradientColorBottomLeft", brush.decalGradientColorBottomLeft)))
  -- api.setGradientColorTopRight(ColorI.fromTable(getValueOrDefault("decalGradientColorTopRight", brush.decalGradientColorTopRight)))
  -- api.setGradientColorBottomLeft(ColorI.fromTable(getValueOrDefault("decalGradientColorBottomLeft", brush.decalGradientColorBottomLeft)))
  -- api.setGradientColorBottomRight(ColorI.fromTable(getValueOrDefault("decalGradientColorBottomRight", brush.decalGradientColorBottomRight)))
  -- api.setGradientColorBottomLeft(ColorI.fromTable(getValueOrDefault("decalGradientColorBottomLeft", brush.decalGradientColorBottomLeft)))
  -- api.setGradientColorBottomRight(ColorI.fromTable(getValueOrDefault("decalGradientColorBottomRight", brush.decalGradientColorBottomRight)))
  -- api.setDecalTexturePath("metallic", getValueOrDefault("decalMetallicTexturePath", brush.decalMetallicTexturePath))
  -- api.setDecalScale(vec3(brush.decalScale[1], brush.decalScale[2], brush.decalScale[3]))
  -- api.setDecalSkew(Point2F.fromTable(getValueOrDefault("decalSkew", brush.decalSkew)))
  -- api.setMetallicIntensity(brush.metallicIntensity or 1.0)
  -- end
  -- api.setDecalUv(Point2F.fromTable(getValueOrDefault("decalUv", brush.decalUv)))
  -- if brush.alphaMaskInvert ~= api.isAlphaMaskInvertEnabled() then
@/lua/ge/extensions/editor/dynamicDecals/layerTypes/path.lua
      if editor.uiColorEdit4(string.format("##%s_%s_%s", layer.uid, guiId, "inspector_color"), editor.getTempFloatArray4_TableTable(layer.color:toTable()), nil, editor.getTempBool_BoolBool(false)) then
        layer.color = Point4F.fromTable(editor.getTempFloatArray4_TableTable())
      end
@/lua/ge/extensions/editor/dynamicDecals/layerTypes/linkedSet.lua
  elseif propType == api.types.Point2F then
    layer[property.id] = Point2F.fromTable(property.value)
  elseif propType == api.types.Point3F then
  elseif propType == api.types.Point4F then
    layer[property.id] = Point4F.fromTable(property.value)
  elseif propType == api.types.string then
  elseif propType == api.types.ColorI then
    layer[property.id] = ColorI.fromTable(property.value)
  else