Русское сообщество AutoIt

  • Май 22, 2012, 13:58:05 *
  • Добро пожаловать, Гость
Пожалуйста, войдите или зарегистрируйтесь.

Войти
Расширенный поиск  

Новости:

Создан файловый архив для участников форума.

Закачивайте свои файлы и получайте рейтинг, прямые ссылки, и т.п.

Для изображений и скриншотов по прежнему есть AUTOIT.RV.UA

Реклама

Автор Тема: 3D Axis - Построение 3D графиков функций  (Прочитано 12348 раз - 1 votes) 

0 Пользователей и 1 Гость смотрят эту тему.

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****
  • Репутация: 1909
  • Online Online
  • Пол: Мужской
  • Сообщений: 3970
  • Версия AutoIt: 3+
    • Награды
AutoIt: 3.3.4.0
Версия: 2.2

Категория: Графика / GDI+, Математика

Описание: Программа позволяет строить практически любые графики функций, которые можно задать одним уравнением вида f(a) или f(a, b). Графики можно строить в одной из следующих систем координат: прямоугольная, цилиндрическая или сферическая. Для начала попробуйте поиграться с примерами, которые представлены ниже (файл Examples.3da), где находятся 20 разных функций для разных систем координат. Импортируйте его в программу и посмотрите, что получится. Но не следует выбирать сразу все функции, т.к. их обработка может занять довольно много времени. Далее можете придумать свои собственные уравнения, здесь все зависит только от Вашей фантазии. Если у кого-нибудь получатся красивые графики, то пожалуйста поделитесь ими в этой теме. По умолчанию, в программе доступны все математические функции, которые определены непосредственно в AutoIt - Cos(), Sin(), Sqrt() и т.д., но если Вам этого будет мало, то можно подключить свои собственные функции в виде обычных AutoIt функций:

Код: AutoIt [Выделить]
Func MyFunc($nValue)
    Return ...
EndFunc   ;==>MyFunc

Например, таким образом можно построить график ряда Фурье, причем в пространстве (!), ну или еще что-нибудь. И на последок, если кому интересно, то вот основа данной программы. Функция преобразования (проекции) пространственных координат (X,Y,Z) на плоскость (Xp,Yp), пришлось самому выводить, т.к. лень было искать в сети. Смысл переменных $D, $I и $T можно понять, поигравшись с первыми тремя ползунками (слайдерами) в программе.

Код: AutoIt [Выделить]
Func _2D($X, $Y, $Z, $D, $I, $T, ByRef $Xp, ByRef $Yp)

    Local $DC = Cos($D * $Pi / 180)
    Local $DS = Sin($D * $Pi / 180)
    Local $IC = Cos($I * $Pi / 180)
    Local $IS = Sin($I * $Pi / 180)
    Local $TC = Cos($T * $Pi / 180)
    Local $TS = Sin($T * $Pi / 180)

    $Xp = $X * ($DC * $TC - $DS * $TS * $IC) - $Y * ($DS * $TC + $DC * $TS * $IC) + $Z * ($TS * $IS)
    $Yp = $X * ($DS * $IS) + $Y * ($DC * $IS) + $Z * ($IC)

EndFunc   ;==>_2D

Файл: AU3, EXE, EXE (1101x733)

Используемые библиотеки: ColorChooser.au3, ColorPicker.au3, Restart.au3, WinAPIEx.au3

Пример(ы): Examples.3da

Просто натяните этот файл на основное окно программы, выберите функции и нажмите кнопку "Draw".

Скриншот:




Источник: 3D Axis (оффициальный форум)
Автор: Yashied

Примечание:

Размер основного окна программы более 1250x860 точек и не подлежит изменению, чему будут рады не все мониторы, особенно ноутбуки. Поэтому, для комфортной работы я рекомендую минимально необходимый размер монитора ~ 17-19".
« Последнее редактирование: Февраль 29, 2012, 10:52:11 от Yashied »



  Записан
Думай, прежде чем говорить.

CreatoR [?]

  • Администратор
  • *
  • *****
  • Репутация: 1403
  • Offline Offline
  • Пол: Мужской
  • Сообщений: 5068
  • Версия AutoIt: 3.2.8.1+
  • AutoIt is simple, subtle, elegant
    • WWW
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #1, Отправлен: Декабрь 22, 2009, 03:41:17 »
Yashied [?]
Цитата
для комфортной работы я рекомендую минимально необходимый размер монитора ~ 17-19
У меня 17, и при этом не видно заголовка окна и левого края.




  Записан
Правила, Поиск, Супер тема


AutoIt is simple, subtle, elegant.



«Не оказываю техподдержку через ПМ/ICQ, и по электронной почте - для этого есть форум. (C)»
«Законы Мэрфи неоспоримы!»


Мои работы

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1909
  • Online Online
  • Пол: Мужской
  • Сообщений: 3970
  • Версия AutoIt: 3+
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #2, Отправлен: Декабрь 22, 2009, 03:50:47 »
Современные 17" (3:4) мониторы как правило имеют нативное разрешение 1280x1024, 19" (16:10) - 1440x900.

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

:)


Добавлено: Декабрь 22, 2009, 03:57:35
У меня на ноуте тоже заголовка не видно, но он 13"! (или 14")
« Последнее редактирование: Декабрь 22, 2009, 04:01:33 от Yashied, Причина: Объединение сообщений »



  Записан

TheBloodTear [?]

  • Новичок
  • *
  • Репутация: 7
  • Offline Offline
  • Пол: Мужской
  • Сообщений: 36
  • Версия AutoIt: 3.3.0.0
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #3, Отправлен: Декабрь 22, 2009, 10:30:02 »
Блин, офигенно!!! :laugh: Вот где это было, когда я учил Геометрию? :) ..
 :IL_AutoIt_1:




  Записан
Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел.

Kaster [?]

  • Глобальный модератор
  • *
  • *****
  • Репутация: 502
  • Offline Offline
  • Пол: Мужской
  • Сообщений: 3286
  • Версия AutoIt: 3.3.8.1
  • Мой Аватар, он лучший самый
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #4, Отправлен: Декабрь 22, 2009, 11:28:27 »
А есть возможность брать данные не в результате расчета функций, а считывания с файла, например? т.к. построение графиков известных функций это наверное 10% практической необходимости подобных программ, все остальное это визуализация имеющихся табличных данных.
а так, шикарно  :ok:


Добавлено: Декабрь 22, 2009, 11:35:57
и еще, у меня монитор 19 инчей. но окно еле еле умещается на экран. не видно только границ, и нижние кнопки на половину  ;D
« Последнее редактирование: Декабрь 22, 2009, 11:35:57 от Kaster, Причина: Объединение сообщений »



  Записан
Конференция посвященная AutoIt на jabber.ru - autoit@conference.jabber.ru
Как попасть на конференцию читаем тут
Файлы можете качать сюда - Файловая область
Продолжать дискуссию в теме отмеченной как "Решенная" - моветон.
Банхамером не обладаю, так что расслабьтесь ;)
Банхамером обладаю, так что не расслабляться :Ban:

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1909
  • Online Online
  • Пол: Мужской
  • Сообщений: 3970
  • Версия AutoIt: 3+
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #5, Отправлен: Январь 11, 2010, 01:53:56 »
Специально для любителей всего портативного добавил уменьшенную версию программы. Размер клиентской части GUI - 1101x733. Это максимум, что я смог сделать...




  Записан

Garrett [?]

  • Модератор
  • *
  • *****
  • Репутация: 548
  • Offline Offline
  • Пол: Мужской
  • Сообщений: 2056
  • Версия AutoIt: 3.3.6.1
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #6, Отправлен: Январь 11, 2010, 02:41:52 »
Прекрасная работа Yashied:ok:




  Записан

--------------------------------------------------------------------------------------------------
Все стандарты Document Object Model HTML
--------------------------------------------------------------------------------------------------
«Жизнь – цепь, а мелочи в ней – звенья. Нельзя звену не придавать значения!»

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1909
  • Online Online
  • Пол: Мужской
  • Сообщений: 3970
  • Версия AutoIt: 3+
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #7, Отправлен: Январь 11, 2010, 02:58:44 »
Спасибо.




  Записан

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1909
  • Online Online
  • Пол: Мужской
  • Сообщений: 3970
  • Версия AutoIt: 3+
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #8, Отправлен: Февраль 06, 2010, 03:37:44 »
Kaster  [?]
Цитата
А есть возможность брать данные не в результате расчета функций, а считывания с файла, например?

Я тут прикинул, каких размеров должен быть массив с данными... ~5k точек для довольно средненького результата, для одной поверхности... :wacko:



Наверное, попробую на эту тему что-нибудь сделать.
« Последнее редактирование: Июнь 10, 2010, 03:28:06 от Yashied »



  Записан

Kaster [?]

  • Глобальный модератор
  • *
  • *****
  • Репутация: 502
  • Offline Offline
  • Пол: Мужской
  • Сообщений: 3286
  • Версия AutoIt: 3.3.8.1
  • Мой Аватар, он лучший самый
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #9, Отправлен: Февраль 17, 2010, 17:17:32 »
Yashied  [?]
Цитата
Я тут прикинул, каких размеров должен быть массив с данными... ~5k
5k?  :rofl:
это ерунда. мне приходится визуазилировать данные до 1 ГБ. тут фишка в том, что не обязательно обрабатывать все. все равно монитор физически не способен это отобразить. поэтому, например та прога что у меня, она рисует только те точки, что попадают в промежуток между двумя пикселями. а остальные данные нужны, например, чтобы делать зуминг. если сделать зуминг на максимуме, то в идеале получается соответствие 1pixel per 1data_point




  Записан

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1909
  • Online Online
  • Пол: Мужской
  • Сообщений: 3970
  • Версия AutoIt: 3+
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #10, Отправлен: Февраль 17, 2010, 17:22:57 »
Да, не рисовать, но обрабатывать все равно нужно будет.




  Записан

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1909
  • Online Online
  • Пол: Мужской
  • Сообщений: 3970
  • Версия AutoIt: 3+
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #11, Отправлен: Март 14, 2010, 03:37:27 »
Обновил программу до версии 2.2. Улучшен алгоритм Drag & Drop.




  Записан

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1909
  • Online Online
  • Пол: Мужской
  • Сообщений: 3970
  • Версия AutoIt: 3+
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #12, Отправлен: Март 25, 2010, 02:31:34 »
Обновил программу, добавил это.




  Записан

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1909
  • Online Online
  • Пол: Мужской
  • Сообщений: 3970
  • Версия AutoIt: 3+
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #13, Отправлен: Июль 08, 2010, 18:20:06 »
Вот мне интересно, кто-нибудь пользовался этой программой?




  Записан

Guezt Gutsy [?]

  • Продвинутый
  • ***
  • Репутация: 75
  • Offline Offline
  • Пол: Мужской
  • Сообщений: 333
  • Версия AutoIt: 3.3.6.1
    • Награды
Re: 3D Axis - Построение 3D графиков функций
« Ответ #14, Отправлен: Июль 08, 2010, 18:30:44 »
Вот мне интересно, кто-нибудь пользовался этой программой?
Yashied, я пользовался, вздохнул и подумал - вот бы мне раньше такую, лежит в рабочих проектах :)




  Записан
 


Похожие темы
Тема Автор Ответов Просмотров Последний ответ
Как Подключить udf функций?
AutoIt для новичков
Vlasssov 3 1234 Последний ответ Октябрь 09, 2009, 16:03:33
от Yashied
DllCall - ищу описания функций Win API
AutoIt для новичков
killbond 4 2699 Последний ответ Ноябрь 17, 2009, 04:13:39
от Yashied
[Script] Пример построения графиков функций из массива
Примеры и рабочие проекты
Yashied 1 1918 Последний ответ Февраль 01, 2010, 23:30:14
от Garrett
Реализация функций Autoit в Win API
AutoIt для новичков
lightforever 1 856 Последний ответ Июль 16, 2010, 12:27:37
от CreatoR
Экспорт функций в DLL.
AutoIt для новичков
Shaman 4 844 Последний ответ Октябрь 15, 2010, 15:13:18
от Shaman
Как ускорить построение графика?
AutoIt для новичков
Rem 17 1649 Последний ответ Октябрь 12, 2011, 07:31:02
от Luke
дополнение к AutoIt , визуальное построение интерфейса приложения
Общение
jilexandr 1 444 Последний ответ Сентябрь 07, 2011, 22:41:54
от WSWR
Перенесено: дополнение к AutoIt , визуальное построение интерфейса приложения
AutoIt для новичков
Kaster 0 267 Последний ответ Сентябрь 07, 2011, 23:12:46
от Kaster
Пояснение и описание функций.
AutoIt для новичков
Tantum Capitis 5 426 Последний ответ Февраль 27, 2012, 22:58:02
от AZJIO
Перенесено: Построение шаблона для StringRegExp
AutoIt для новичков
Kaster 0 108 Последний ответ Март 01, 2012, 06:54:21
от Kaster


Реклама

* Последние сообщения на форуме
post Re: Авторизация в одноклассниках
[Автоматизация IE и Web-интерфейса] Arei Сегодня в 13:24:59
post Re: Смена IP адресса
[AutoIt для новичков] Zaramot Сегодня в 13:04:33
post Re: Авторизация в одноклассниках
[Автоматизация IE и Web-интерфейса] Александр Сегодня в 12:59:21
post Re: Выполнение скрипта при нажатии средней кнопки мыши
[AutoIt для новичков] madmasles Сегодня в 12:23:31
post [Мышь, клавиатура] Re: Выполнение скрипта при нажатии средней кнопки мыши
[AutoIt для новичков] Nurgazy Сегодня в 12:09:36
post Re: Объясните плз, как работать с массивами ArrayAdd и прочее...
[AutoIt для новичков] madmasles Сегодня в 12:08:03
post Объясните плз, как работать с массивами ArrayAdd и прочее...
[AutoIt для новичков] webmonster Сегодня в 12:03:38
post Re: Как заменить метку времени файла на севере
[Автоматизация IE и Web-интерфейса] ---Zak--- Сегодня в 11:39:56
post Как заменить метку времени файла на севере
[Автоматизация IE и Web-интерфейса] eropov Сегодня в 11:26:37
post Re: Выполнение скрипта при нажатии средней кнопки мыши
[AutoIt для новичков] madmasles Сегодня в 11:13:16

* Пользователи онлайн
  • Dot Гостей: 127
  • Dot Скрыт: 2
  • Dot Пользователей: 29
  • Dot Пользователи Online: