Пожалуйста, не блокируйте рекламу!

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

*

Оффлайн SPINCODE

  • **
  • 57
  • Репутация: +5/-0
  • Пол: Мужской
  • Spincode
Простой Калькулятор на GDL
« : Марта 30, 2007, 19:10:33 »

Test

Задумал  объект типа выноски, который анализирует строку ID, в которую можно вписать
"(12+2*5)/2.1", вычленяет в ней операнды и операторы, производит вычисления и подставляет после
значка "=". Думаю - будет незаменимый в работе инструмент. Самое главное - все вычисления сразу на чертеже, и автоматом!!

   Вроде знаю как сделать,

      Нет времени!!!

         Так что если кто-нибудь сделает первым, или уже что-то подобное делал, то пишите.



*

Оффлайн and

  • ****
  • 418
  • Репутация: +22/-2
  • Пол: Мужской
Re: Простой Калькулятор на GDL
« Ответ #1 : Марта 31, 2007, 10:40:26 »
когдато был такой библ gdl calculator на  gurugdl.com
недавно вспоминал его... может  у кого есть тот калькулятор... сайт вроде уже умер... а там народ лабал сильно :)

По существу сделать такое будет сложновато имхо... Это уже электронные таблицы в полный рост. это вообще было бы супер.. поделитесь идеей как... думаете делать. Из такого библа было бы много пользы.


*

Оффлайн crazyASD

  • Самый главный
  • *****
  • 8545
  • Репутация: +518/-25
  • Пол: Мужской
  • iCrazy
Re: Простой Калькулятор на GDL
« Ответ #2 : Марта 31, 2007, 11:11:57 »
Нутк я его найду и выложу ибо нефиг!!!

*

Оффлайн SPINCODE

  • **
  • 57
  • Репутация: +5/-0
  • Пол: Мужской
  • Spincode
Re: Простой Калькулятор на GDL
« Ответ #3 : Марта 31, 2007, 11:14:35 »
Схема простая:

1. Просканировать строку на предмет арифметических составляющих
2. Так как в гдл нет объектно ориентированного программирования создать
псевдо-объектный массив, - массив элеентов, имеющих соответствующие характеристики(операнд, скобка, число ...)
например: ARIFM_STRING_SCAN [3] []
Каждый элемент будет иметь 1. - значение , 2 - номер операнда (0 , если это все таки число, а не знак "+")
3. После того, как массив набран происходит анализ выражения с реккурентным вызовом "решающей подпрограммы"
4. подстановка результата в строку
5. вывод на экране.

Что-то вроде  того...

*

SergeyAB

Re: Простой Калькулятор на GDL
« Ответ #4 : Марта 31, 2007, 15:18:25 »
ээээ...тут по просьбе переписывал один объектик - тоже выноску где контент задавался через окошко ID,и вот что могу сказать по существу:
- максимальная длина ID - 14 символов, иначе надо в dll лезть....и править
- не есть хорошо что работа идет через ID...что касательно логики...не уверен до конца  но думаю что можно воспользоваться виндовым калькулятором как внешним макросом...на Сях то было б 2 пальца, а как с гдл вызов написать?

*

Оффлайн SPINCODE

  • **
  • 57
  • Репутация: +5/-0
  • Пол: Мужской
  • Spincode
Re: Простой Калькулятор на GDL
« Ответ #5 : Марта 31, 2007, 15:42:23 »
ээээ...тут по просьбе переписывал один объектик - тоже выноску где контент задавался через окошко ID,и вот что могу сказать по существу:
- максимальная длина ID - 14 символов, иначе надо в dll лезть....и править
- не есть хорошо что работа идет через ID...что касательно логики...не уверен до конца  но думаю что можно воспользоваться виндовым калькулятором как внешним макросом...на Сях то было б 2 пальца, а как с гдл вызов написать?

Так глубоко я копнуть точно не смогу, а проблему с 14 символами я решаю так:
       - Если ID окно не заполнено данные брать из внутренней переменной.
ID использую для скорости, а уж когда не влезает, тогда открываешь настройки и вносишь данные уже внутри.

*

SergeyAB

Re: Простой Калькулятор на GDL
« Ответ #6 : Апреля 03, 2007, 09:29:23 »
ID использую для скорости...
-да, тут тоже столкнулся с этим "приемом", че могу сказать - "Голь на выдумки хитра!!!!" - в хорошем смысле, это ж придумать надо было...

*

Оффлайн Valery W

  • *****
  • 5987
  • Репутация: +634/-14
  • Пол: Мужской
Re: Простой Калькулятор на GDL
« Ответ #7 : Мая 06, 2007, 01:46:32 »
А я для скорости использую калькулятор от Дмитрия Светлова (_http://dimonius.da.ru).
Стоит поверх всех окон. Вводишь выражение и тут же видишь результат. (см. рис.)
Вот его характеристики:
Данная программа предназначена для произведения инженерных, бухгалтерских и иных вычислений. Достоинства программы:
- до 18 знаков в числах;
- ввод выражения как строки символов;
- динамическое вычисление вводимой строки;
- возможность оперирования переменными и константами ;
- архив выражений;
- арифметические, Алгебраические и тригонометрические функции;
- работа с буфером обмена.

И вам советую.

*

Оффлайн crazyASD

  • Самый главный
  • *****
  • 8545
  • Репутация: +518/-25
  • Пол: Мужской
  • iCrazy
Re: Простой Калькулятор на GDL
« Ответ #8 : Мая 06, 2007, 13:08:54 »
А самое смешное что я не парюсь и имею рядом с компом обычный Citizen с большими цифрами и кнопками ;D

*

Оффлайн SPINCODE

  • **
  • 57
  • Репутация: +5/-0
  • Пол: Мужской
  • Spincode
Re: Простой Калькулятор на GDL
« Ответ #9 : Мая 06, 2007, 14:08:43 »
Калькулятор с большими кнопками - банально!
А сделать на GDL - это уже СПОРТ!

*

Оффлайн Valery W

  • *****
  • 5987
  • Репутация: +634/-14
  • Пол: Мужской
Re: Простой Калькулятор на GDL
« Ответ #10 : Мая 06, 2007, 14:21:48 »
А самое смешное что я не парюсь и имею рядом с компом обычный Citizen с большими цифрами и кнопками
Простые калькуляторы не работают с переменными и константами и не имеют архив выражений. Только очень дорогие.

SPINCODE:
Цитировать
А сделать на GDL - это уже СПОРТ!


Помоему это уже мазохизм.

*

SergeyAB

Re: Простой Калькулятор на GDL
« Ответ #11 : Декабря 08, 2009, 19:54:32 »
Привет всем любителям ГДЛ.  :D
Не прошло и ... не будем уточнять.
Решил вот интерфейс организовать для этого самого калькулятора и споткнулся вроде бы на ровном месте, суть проблемы в том что не могу на уровне ГДЛ скрипта правильно обработать клик на кнопке расположенной в интерфейсной части объекта, трабл в том что энжина трактует события KeyDown и KeyUp как два события типа Click, соответственно все что напишешь в скрипте в "обработчике" этого клика выполняется два раза. Одно дело когда по этому самому клику нужно перелистнуть страницу, и совсем другое когда нужно перемолоть переменные.
Для меня проблема не нова, но раньше эта проблема не являлась камнем преткновения.
В общем суть трабла изложена в комменте в скрипте параметров.
Объекту еще 2 часа всего так что пинайте не сильно.  ;D
А чтобы быстрее понять в чем суть вопроса - откройте интерфейс объекта - вкладка называется "Host", и попробуйте ввести две одинаковых цифры подряд.
Может, кто подскажет как побороть?
« Последнее редактирование: Декабря 09, 2009, 10:44:45 от SergeyAB »

*

Оффлайн ghostmale

  • ***
  • 133
  • Репутация: +51/-1
  • Пол: Мужской
Re: Простой Калькулятор на GDL
« Ответ #12 : Декабря 08, 2009, 21:08:38 »
Уважаемые! Давно уже пользуюсь и советую всем.
Если XP, то PowerCalculator

http://www.microsoft.com/windowsxp/Downloads/powertoys/Xppowertoys.mspx

Если Windows7 (как у меня), то SpeedCrunch

http://www.speedcrunch.org/en_US/index.html

Лучшее из того, что можно найти. Конечно, это не интегрировано в ArchiCAD, но инструменты очень мощные (например СпидКранч сохраняет историю по умолчанию и вообще очень удобен, Повер от него не отстает почти). Так что — советую :)

*

Оффлайн SPINCODE

  • **
  • 57
  • Репутация: +5/-0
  • Пол: Мужской
  • Spincode
Re: Простой Калькулятор на GDL
« Ответ #13 : Августа 09, 2010, 11:13:34 »
Строковый калькулятор готов в русском и английском варианте.

Строковый калькулятор может быть полезен для различных вычислений прямо на планах,
разрезах, рабочих листах и т.д. Особенно для сложных формул. Есть два вспособа ввода:
1 - ограниченный по длине ввод в поле ID в Информац. Табло, и 2 - полноразмерный ввод и настройки через диалоговое окно.
Калькулятор работает со скобками, Понимает и обрабатывает тригонометрические и другие функции, знает некоторые математические константы.

*

Оффлайн nideKer

  • *****
  • 2603
  • Репутация: +121/-2
  • Пол: Мужской
  • freeRide 4ever
Re: Простой Калькулятор на GDL
« Ответ #14 : Августа 09, 2010, 12:18:19 »
Строковый калькулятор готов в русском и английском варианте.
Классная тма SPINCODE спасибо!

 

Похожие темы

  Тема / Автор