Показать сообщение отдельно
Старый 27.04.2022, 10:43   #15
СамоучкаРобот
Бывалый
 
Регистрация: 23.04.2022
Сообщения: 28
Сказал Спасибо: 4
Сказали Спасибо 1 раз(а) в 1 сообщении
По умолчанию

ещё вопрос. есть стандартный формуляр. при его раскрытии он выглядит так
LIN P2 Vel=2m/s CPDAT2 Tool[1]: (название) Base[0]: (название)

$BWDSTART=FALSE (хз куда это нужно)
LDAT_ACT=LCPDAT2(тоже хз, но и не нужно, это Я так понял служебное)
FDAT_ACT=FP2(вроде тоже описывается что то связанное с точкой Р2)
BAS(#CP_PARAMS,2)(по идее сюда и надо прописать команду, которая сменит базу для данного формуляра.
LIN XP2
и вот как раз базу мне и нужно изменить программно, что бы автоматом база нужная прописывалась, в зависимости от того, что будет во входящем параметре, сейчас чтоб изменить номер базы, нужно выделить формуляр, нажать изменить, кликнуть на иконку левее названия точки (Р1) выбрать номер базы, например 21.
тогда формуляр будет выглядеть вот так
LIN P2 Vel=2m/s CPDAT2 Tool[1]: (название) Base[21]: (название)

для чего и как это будет работать.
есть некая глобальная программа, в которой надо обварить отверстия на пласти детали, с определённым размерами и зашитой под неё базой. у меня для теста это 21. далее в определённом точке на этой базе будет вызываться функция(она работает, уже написал), которая выполняет замер центра отверстия, но работает в координатах базы 21, относительно точки e6pos, которую Я передаю в эту функцию, а затем результат измерений записывает в базу 22( у меня).

так вот, изначальных деталей несколько, со своими размерами, соответственно с разными номерами баз. например 14.
чтоб моя функция работала, мне нужно передать номер 14 как аргумент, функция отработала в этой базе.


схематично так
decl int numberOfBase
numberOfBase=14

(считаем что Р1 это точка, в виде e6pos)
ptp p1 (номер инструмента и тд) base[14]: (название)

centerHole(xp1, numberOfBase)
или
centerHole(ХР1, 14 или 20 или любой номер)

и вот именно это и нужно прописать как базу для операций внутри этой функции CenterHole

баз будет много, а Я хочу чтоб моя функция была одна на все базы.

Последний раз редактировалось СамоучкаРобот, 27.04.2022 в 10:47 Причина: двоеточие и откр скобки слитно = смайлик. пришлось переделать
СамоучкаРобот вне форума   Ответить с цитированием