Size: a a a

2021 January 22

VM

Vadim Misbakh-Solovi... in pro.lua
Alex
Выход только делать глобальной переменную strs что бы этот кусок кода ее увидел?
либо делать глобальной, либо передавать её в функции при вызове
источник

A

Alex in pro.lua
Как это должно выглядеть?
источник

A

Alex in pro.lua
В самом вызываемом файле я так понимаю надо записать  типо
function blabla(strs)

local sys = {}
......

return sys

end
источник

A

Alex in pro.lua
А вызывать как с передачей strs аргументом?
источник

VM

Vadim Misbakh-Solovi... in pro.lua
Alex
А вызывать как с передачей strs аргументом?
blabla(strs)
источник

VM

Vadim Misbakh-Solovi... in pro.lua
вот только эт
источник

VM

Vadim Misbakh-Solovi... in pro.lua
по хорошему, в объявлении функии, и внутри неё, лучше использовать другое имя
источник

VM

Vadim Misbakh-Solovi... in pro.lua
ну, на всякий случай
источник

A

Alex in pro.lua
Короче я все что можно перепробовал. Нифига,сдаюсь... можно пример?
источник

AB

Artem Benois in pro.lua
всем привет, подскажите чем лучше сделать
из такого:
"Шахзада"

в такое:
"\u0428\u0430\u0445\u0437\u0430\u0434\u0430"
источник

АК

Александр Караев... in pro.lua
Artem Benois
всем привет, подскажите чем лучше сделать
из такого:
"Шахзада"

в такое:
"\u0428\u0430\u0445\u0437\u0430\u0434\u0430"
какой-нибудь json encoder с режимом ascii only.
можно и самому накостылить, но потом выяснится, что ещё кавычки надо экранировать и т.д.
источник

AB

Artem Benois in pro.lua
а из готовых модулей, типа utf8.escape?
источник

АК

Александр Караев... in pro.lua
Artem Benois
а из готовых модулей, типа utf8.escape?
так это не utf8, а utf16
источник

KA

Kirill Akulov in pro.lua
Приветствую, как в случае отсутствия модулей подгружать их по мере необходимости? есть тысяча модулей с именами M0, M1 ... M99 внутри которых обязательно определена соответствующая одноимённая глобальная функция. эти модули могут быть использованы из других скриптов, как обойтись без require?
источник

KA

Kirill Akulov in pro.lua
подгружать все 1000 перед исполнением не вариант
источник

АК

Александр Караев... in pro.lua
Kirill Akulov
Приветствую, как в случае отсутствия модулей подгружать их по мере необходимости? есть тысяча модулей с именами M0, M1 ... M99 внутри которых обязательно определена соответствующая одноимённая глобальная функция. эти модули могут быть использованы из других скриптов, как обойтись без require?
как эти функции/модули используются? пример покажи
источник

KA

Kirill Akulov in pro.lua
-- контроль плоскости Z вдоль Y
require'M622'
M622('Y30Z10')
источник

KA

Kirill Akulov in pro.lua
-- M622 угол разворота "кромка YZ"
function M622(arg)
local sc = 1000.0
if arg == nil then arg = ' ';sc=1.0 end -- заменяем nil argument на пустую строку
local vect = Arg2Pos(arg):mul(sc);  -- print(vect);

-- вектор А
local vA = CNC.Pos();
vA.Y = vect.Y;

-- вектор Б
local vB = CNC.Pos();
vB.Z = -vect.Z;

StartMesure();

 local org = mach.pos; -- текущие координаты
 
 FindTouch(vB);
 local p1 = mach.pos; -- координаты первой точки
 
 SetTouch(3);  -- режим возврата
 mach:MOVETO(org); -- возврат в начальную точку
 
 mach:MOVE(vA);  -- переход во вторую начальную точку
 local org1 = mach.pos; -- текущие координаты

 FindTouch(vB);
 local p2 = mach.pos; -- координаты второй точки

 SetTouch(3);  -- режим возврата

 mach:MOVETO(org1); -- возврат в начальную точку
 mach:MOVETO(org); -- возврат в начальную точку

StopMesure();
mach.Cond = 0;

-- вычисление угла
local ang = 0.0;

local DZ = p2.Z-p1.Z;
local DY = p2.Y-p1.Y;

ang = math.atan(DZ,DY);
ang = math.deg(ang); -- преводим в градусы
if ang> 90 then ang = ang-180 end
if ang<-90 then ang = ang+180 end

-- передача угла в систему
--mach:setANG(ang);
logLine(string.format('angYZ:%.5f DZ:%.0f',ang,DZ))

return ang,DZ
end
источник

S

Snusmumriken in pro.lua
Kirill Akulov
Приветствую, как в случае отсутствия модулей подгружать их по мере необходимости? есть тысяча модулей с именами M0, M1 ... M99 внутри которых обязательно определена соответствующая одноимённая глобальная функция. эти модули могут быть использованы из других скриптов, как обойтись без require?
local lib = setmetatable({}, {__index = function(self, k) self[k] = require(k); return self[k] end})
lib.M622.foo("123123")
-- вместо
local M622 = require("M622")
M622.foo("Y30Z10")

Ленивая подгрузка либ по мере использования.
источник

KA

Kirill Akulov in pro.lua
Благодарю
источник