Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 15.12.2011, 01:04
Аватар для Livanderiaamarum
Профессор
Отправить личное сообщение для Livanderiaamarum Посмотреть профиль Найти все сообщения от Livanderiaamarum
 
Регистрация: 10.12.2011
Сообщений: 290

Сообщение от trikadin Посмотреть сообщение
Можно.

А ещё можно не одной строкой. Вас за это никто не побьёт.
а разве одним выражением не быстрее?

блин да, вы правы, я черт возьми прямо осветление какое-то почувствовал.. освобождение.! у меня был адский заеб не создавать переменных, делать максимально короткие пути поиска интерпритатором ременных в прототипах. это сильно ухучшало скорость разработки. щас я действительно понял что НУЖНО ВНАЧАЛЕ СДЕЛАТЬ ЧТОБЫ РАБОТАЛО, а потом уже оптимизировать.
да и к тому же такая дикая оптимизация иногда совсем не к месту и не нужна. но это происходило прямо таки автоматически у меня) щас я реально задумался над этим. и решил не сокращать код а писать максимально развернуто и понятно. спасибо вам большое)

Последний раз редактировалось Livanderiaamarum, 15.12.2011 в 01:15.
Ответить с цитированием
  #12 (permalink)  
Старый 15.12.2011, 01:12
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Сообщение от Livanderiaamarum
а разве одним выражением не быстрее?
А это как составить)
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #13 (permalink)  
Старый 15.12.2011, 01:18
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Сообщение от Livanderiaamarum
x = (y-y1)/(y2-y1)*(x2-x1) + x1
кстати эта формула будет работать 50 на 50.учитывая что операции с числами типа float иногда /часто дают результат не точный а приближенный.
пример эфемерный но степень приближения примерно такая:
0.35+0.65=0.99
Ответить с цитированием
  #14 (permalink)  
Старый 15.12.2011, 01:19
Аватар для Livanderiaamarum
Профессор
Отправить личное сообщение для Livanderiaamarum Посмотреть профиль Найти все сообщения от Livanderiaamarum
 
Регистрация: 10.12.2011
Сообщений: 290

Сообщение от with-love-from-siberia Посмотреть сообщение
неправда ваша.

Это логично. 0 / 0 - это неопределенность, которая не может быть представлена конечным или бесконечным числом, поэтому в языке обозначается - NAN. Просто отлавливайте такие ситуации.
200 / 0 тоже неопределенность либо бесконечность либо само делимое число. почему тут получается бесконечность в таком случае если это не особенности интеерптитатора?
Ответить с цитированием
  #15 (permalink)  
Старый 15.12.2011, 01:21
Аватар для Livanderiaamarum
Профессор
Отправить личное сообщение для Livanderiaamarum Посмотреть профиль Найти все сообщения от Livanderiaamarum
 
Регистрация: 10.12.2011
Сообщений: 290

Сообщение от dmitriymar Посмотреть сообщение
кстати эта формула будет работать 50 на 50.учитывая что операции с числами типа float иногда /часто дают результат не точный а приближенный.
пример эфемерный но степень приближения примерно такая:
0.35+0.65=0.99
это как-то реализованно в видеокартах же аппаратно? не знаете как)? оч интересно.

а все, придумал))! тут мне не нужно ТОЧНО знать в каком месте розовая линия пересекает мой голубой луч! мне нужно знать пересекает ли она его ДАЛЬШЕ определеннго места, или пересекает ближе этого места))



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

ну вот. это типа пересекающий. тока небычный) просто в таком случае буду смотреть СНАЧАЛА на одной ли высоте пущен мой луч и на одной ли с ним высоте пущена проверяемая линия. и при том ПАРАЛЛЕЛЬНЫ ЛИ ОНИ.. вот и все))

нужно вначале определять тип а потом уже работать с каждым типом граней по разному)
но все ровно всем спасибо ОГРОМНОЕ!

Последний раз редактировалось Livanderiaamarum, 15.12.2011 в 01:28.
Ответить с цитированием
  #16 (permalink)  
Старый 15.12.2011, 01:25
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Сообщение от dmitriymar
кстати эта формула будет работать 50 на 50.учитывая что операции с числами типа float иногда /часто дают результат не точный а приближенный.
пример эфемерный но степень приближения примерно такая:
0.35+0.65=0.99
Пример:

alert(0.2+0.1)
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #17 (permalink)  
Старый 15.12.2011, 01:30
Аватар для Livanderiaamarum
Профессор
Отправить личное сообщение для Livanderiaamarum Посмотреть профиль Найти все сообщения от Livanderiaamarum
 
Регистрация: 10.12.2011
Сообщений: 290

Сообщение от trikadin Посмотреть сообщение
Пример:

alert(0.2+0.1)
почему не сделать систему автоматически выбирающую систему счисления?
Ответить с цитированием
  #18 (permalink)  
Старый 15.12.2011, 01:35
Профессор
Отправить личное сообщение для with-love-from-siberia Посмотреть профиль Найти все сообщения от with-love-from-siberia
 
Регистрация: 14.12.2009
Сообщений: 155

Livanderiaamarum,
200 / 0 - это "элементарная" бесконечность. Отвлекитесь от своей задачи и посмотрите с другой стороны. Вот Ваше выражение, по которому Вы считаете абсциссу точки:
x = (y-y1)/(y2-y1)*(x2-x1) + x1


А теперь преобразуйте ее к виду:
Код:
(x-x1)/(x2-x1) = (y-y1)/(y2-y1)
Подставьте реальные значения:
Код:
(x-1)/(5-1) = (5-5)/(5-5)
Вы же не хотите сказать, что любое число будет равно... Чему - нулю, бесконечности?
Ответить с цитированием
  #19 (permalink)  
Старый 15.12.2011, 01:37
Аватар для Livanderiaamarum
Профессор
Отправить личное сообщение для Livanderiaamarum Посмотреть профиль Найти все сообщения от Livanderiaamarum
 
Регистрация: 10.12.2011
Сообщений: 290

Я тут подума, если я хочу определить принадлежность точки полигону то нужно вот что сделать. во первых я не могу симулировать идеальное пространство. для такого копьютера не хватит всех атомов во вселенной. я не могу записать формулой.. я не могу использовать фракталы из-за погрешности. но тут вот дело в чем. где может использоваться принадлежность точки полигону? Правильно! ТОЛЬКО в восприятии человека! например к играх или интерфейсах или в физических движках (которые тоже имеют в настройках точность просчета)

дело в том что нужно будет упрощать многоугольник. оптимизировать его и с оптимизированным уже проводить вычисления. при чем оптимизировать так чтобы несовершенство плавоющей точки не влияло на просчет.


или например пускать 10 лучей, и смотреть сколько граней они пересекут.. и сравнивать и.т.п. то есть я тут не правильный подход вначале использовал...

то есть нужно не ЭМУЛИРОВАТЬ результат, а СИМУЛИРОВАТЬ

Последний раз редактировалось Livanderiaamarum, 15.12.2011 в 01:39.
Ответить с цитированием
  #20 (permalink)  
Старый 15.12.2011, 01:39
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Livanderiaamarum Посмотреть сообщение
Я тут подума...
http://ru.wikipedia.org/wiki/Зад...ольнику

на тебе вот кисточки, сиди и рисуй.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как взятые данные с цикла присоединить к одной переменной ? saturn Элементы интерфейса 2 25.11.2011 13:01
в JavaScript есть сообщение такое же как alert? SergAG Элементы интерфейса 5 05.06.2011 12:07
Как сделать такое fancy menu uonax Элементы интерфейса 2 22.05.2010 12:52
alert!!! как быть с alert???? gooody jQuery 2 19.02.2010 21:44