Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (3): « 1 2 [3]   

> Описание: использоване кода на C/C++ в Кибор
Kibor
Отправлено: 13 Декабря, 2023 - 12:35:50
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8203
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




А кнопки не разрешать смайлики нету?
Галка внизу.
 
 Top
Gorago
Отправлено: 11 Февраля, 2024 - 15:09:29
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 34
Дата рег-ции: Май 2023  
Репутация: 0




Пытаюсь разораться с dll всё собирается но в киборе не работает, выводит 0. Помогите разобраться

С++
С++ (Отобразить)


Кибор (Отобразить)
 
 Top
Zireael
Отправлено: 11 Февраля, 2024 - 16:24:22
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4456
Дата рег-ции: Нояб. 2017  
Репутация: 585




Если передаёте целое число, то функция int должна принимать.
CODE:
get_direction(int x_start, int y_start, int x_end, int y_end)
 
 Top
Gorago
Отправлено: 11 Февраля, 2024 - 17:56:24
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 34
Дата рег-ции: Май 2023  
Репутация: 0




Zireael , увы не помогло
 
 Top
Kibor
Отправлено: 11 Февраля, 2024 - 18:04:54
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8203
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




В Кибор проблема с возратом дробного числа.
А вы возвращаете дробное.
Можете сделать костыль.
 Цитата:
double angle = atan2(dy, dx) * 180.0 / M_PI;
на
double angle = (atan2(dy, dx) * 180.0 / M_PI)*100000;


 Цитата:
int result = get_direction(111, 111, 333, 333);
на
double result = get_direction(111, 111, 333, 333)/100000;
 
 Top
Zireael
Отправлено: 11 Февраля, 2024 - 18:37:02
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4456
Дата рег-ции: Нояб. 2017  
Репутация: 585




Оба варианта работают.
CODE:
extern "C" __declspec(dllexport) int get_direction(int x_start, int y_start, int x_end, int y_end)
{
// Convert from isometric coordinates to 2D coordinates
double x_start_2d = x_start - y_start;
double y_start_2d = (x_start + y_start) / 2;
double x_end_2d = x_end - y_end;
double y_end_2d = (x_end + y_end) / 2;

// Compute the direction vector in 2D space
double dx = x_end_2d - x_start_2d;
double dy = y_end_2d - y_start_2d;

// Compute the angle of the direction vector in degrees using C Standard Library's atan2
double angle = atan2(dy, dx) * 180.0 / M_PI;

// Convert the result to int before returning
return static_cast<int>(angle);
}

CODE:
// вызов функции из кибор
int result = get_direction(111, 111, 333, 333);


CODE:
extern "C" __declspec(dllexport) int get_direction2(double *x_start, double *y_start, double *x_end, double *y_end)
{
// Convert from isometric coordinates to 2D coordinates
double x_start_2d = *x_start - *y_start;
double y_start_2d = (*x_start + *y_start) / 2;
double x_end_2d = *x_end - *y_end;
double y_end_2d = (*x_end + *y_end) / 2;

// Compute the direction vector in 2D space
double dx = x_end_2d - x_start_2d;
double dy = y_end_2d - y_start_2d;

// Compute the angle of the direction vector in degrees using C Standard Library's atan2
double angle = atan2(dy, dx) * 180.0 / M_PI;

// Convert the result to int before returning
return static_cast<int>(angle);
}

CODE:
// вызов функции из кибор
double x_start = 111;
double y_start = 111;
double x_end = 333;
double y_end = 333;
int result = get_direction2(address(#x_start), address(#y_start), address(#x_end), address(#y_end));
 
 Top
Gorago
Отправлено: 11 Февраля, 2024 - 21:22:52
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 34
Дата рег-ции: Май 2023  
Репутация: 0




Zireael , Второй вариант идеальный вышел, спасибо, что исправили ошибки
 
 Top
Redear
Отправлено: 19 Февраля, 2024 - 00:39:08
Post Id



Пользователь
Мастер


Покинул форум
Сообщений всего: 202
Дата рег-ции: Июль 2022  
Репутация: 0




доброй ночи, подскажите на какой версии vs у вас компилируются библиотеки?
я скачал 2022 и скомпилированные библиотеки у меня кибор в упор не видит

(Отредактировано автором: 19 Февраля, 2024 - 00:39:50)

 
 Top
Redear
Отправлено: 19 Февраля, 2024 - 09:36:09
Post Id



Пользователь
Мастер


Покинул форум
Сообщений всего: 202
Дата рег-ции: Июль 2022  
Репутация: 0




разобрался
 
 Top
Страниц (3): « 1 2 [3]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by