а почему не от слова collection? Код читают в 10 раз чаще чем пишут, не надо сокращений...
А если по теме, я конечно не очень силен в геометрии, но вот чисто логически:
1. У нас есть 2 объекта с координатами центра (x1,y1) и (x2,y2) соответственно, для которых мы хотим рассчитать "видят" ли они друг друга, потенциально увидеть друг друга они могут на отрезке из точки (x1,y1) в точку (x2,y2).
2. Область вокруг объекта можно представлять окружностью с тем же центром, что и объект, а область в которой объект "видит" - сектором на этой окружности. (x1,y1) увидит (x2,y2) только если данный отрезок находится в секторе видимости.
3. Другие объекты могут перекрывать видимость, только если их "тело" пересекается данным отрезком. Первичный фильтр тут можно сделать на том, что хоть одна из вершин входит в прямоугольник с вершинами (x1,y1), (x2,y2). Вторичный - хотя бы 2 вершины лежат по разные стороны от данного отрезка.
0xD34F, а откуда в коде из спойлера берется ageTable? Ну и поиск минимума сортировкой, это явно не то что стоит подсказывать новичкам, O(n log n) против O(n), даже при n=3 это разница в 1.5+ раза
Начать стоит с того, что данный код вообще не заведется, так как такой синтаксис некорректен:
...post: post
А вообще тут стоит начать с изучения основ языка и программирования в целом:
- Что такое функции, зачем они нужны, что такое аргументы функции
- Что такое объекты, как они создаются, как изменить существующий объект
Xenatonit Pilemo, а Вы запускали? Выведет не совсем то что в песне.
Обратите внимание, что числительное в строчке "On the first day of Christmas" постоянно меняется, а строчка "And a partridge in a pear tree" отличается в первом куплете и дублируется в последнем.
Так же, в чем сакральный смысл комбинации символов "\t\n"? Если что, символ '\t' - это табуляция.
А вообще тут можно обойтись без постоянных алокаций памяти на куче...
Армянское Радио, хм, получается нормальный для меня вариант - это брать зеленую карточку и продолжать сидеть на иксах и надеяться, что wayland когда-то появится в nvidia за пределами гнома...
А вот насчет передачи кадра между двумя видеокартами - это интересный момент. По идее это может создавать доп нагрузку.
Хотя, пока изучал вопрос наткнулся на такое видео: https://www.youtube.com/watch?v=I9-hHtVtLSQ
Тут автор видео утверждает, что это позволяет ему разгрузить основную видеокарту производя кодирование на второй. А самое главное такая конфигурация у него работает, правда под виндой, но для меня винда не вариант совсем...
Dmitry Roo, раньше об AMF ничего не слышал если честно, погуглил, даже плагин к OBS нашел, но судя по readme и issues он только под винду... Но винда для меня вообще не вариант, по изучаю еще, вполне возможно, что это решит проблему.
Владимир, искал, вариант HDMI-HDMI не устраивает, вариантов DP-DP не нашел. Ну и насколько понимаю, то для захвата понадобится второй комп, который и будет заниматься кодированием, что несколько перебор в моем случае, да и несколько усложняет все, например не совсем понятно как передавать на второй комп звук из системы и с микрофона на первом компе, и с вебкой аналогично.
Мой типичный кейс такой: идет звонок через мессенджер, где я шарю экран или мне шарят экран, мы общаемся голосом и иногда включаем вебку. Все это нужно записать на видео, а после звонка видео нужно скинуть собеседникам, желательно достаточно быстро, ну и заморачиваться доп обработкой точно не хочется.
Dmitry Roo, либо nvenc либо софтверный, софтверный нагружает проц достаточно сильно...
Владимир, думал насчет платы видеозахвата, но во-первых не нашел доступных (в разумное время) с display-port на вход и выход, а во-вторых не работал с такими девайсами и не понятен их функционал, например можно ли так же захватывать звук с системы, звук с микрофона, картинку с веб-камеры. Да, это все на монтаже можно свести, но у меня основной кейс происходит без монтажа, я скидываю запись урока ученику сразу после урока. OBS все это делает просто настройкой сцены + умеет захватывать отдельные окна. Ну и даже если вариант с постобработкой, без nvenc это опять таки будет кодироваться заметно медленнее.
Завести GTK на Rust под виндой - те еще танцы с бубном.
iced - выглядит интересно, но сырой и жрет ресурсы как не в себя, отрисовать GUI сложнее 10-15 виджетов - на среднестатистическом десктопе тупо не хватит оперативки.
tauri выглядит перспективно, но надо понимать что это браузер-вью, притом то что дала ОС, то есть будет HTML+CSS+JS, притом предыдущих стандартов, вот многие хают electron и думают, что tauri будет спасением, но проблема electron не в electron, а в тех кто на нем пишет...
Все никак не до берусь до Qt, десктоп у меня сейчас не в приоритете, а изучать этот комбайн без особой нужды - все равно без практики забудется все, но учитывая, что на плюсах это лучший выбор для кроссплатформенного софта, а на Rust уже вполне стабильный биндинг, думаю и на Rust он будет лучшим выбором для десктопа под любую ОС.
lolrofl01, предобработка и прямая выдача из БД всяко будет быстрее. Да придется хранить 2 варианта одного и того же в БД, если нужен исходный текст, но зато будет и быстро и главное надежно. Регулярки крайне ненадежная вещь по своей природе для обработки разного рода кода, да и медленные они.
IvanIvanIvanIvanIvan, проблема в том, что помимо чистого typescript есть еще tsx (typescript + jsx), который позволяет писать на ts под react.
В нормальных IDE это определяется как правило из расширения файла (.ts или .tsx), хотя может быть и переопределено через tsconfig.json
В плейграунде это можно настроить если открыть вкладку "TS config" сверху и там выставить параметр JSX в значение None.
Не понятно, какую задачу Вы пытаетесь решить.
Процесс какой программы Вы хотите получить? И что в Вашем понимании значит получить процесс?
Какие данные нужно заменять?
А если по теме, я конечно не очень силен в геометрии, но вот чисто логически:
1. У нас есть 2 объекта с координатами центра (x1,y1) и (x2,y2) соответственно, для которых мы хотим рассчитать "видят" ли они друг друга, потенциально увидеть друг друга они могут на отрезке из точки (x1,y1) в точку (x2,y2).
2. Область вокруг объекта можно представлять окружностью с тем же центром, что и объект, а область в которой объект "видит" - сектором на этой окружности. (x1,y1) увидит (x2,y2) только если данный отрезок находится в секторе видимости.
3. Другие объекты могут перекрывать видимость, только если их "тело" пересекается данным отрезком. Первичный фильтр тут можно сделать на том, что хоть одна из вершин входит в прямоугольник с вершинами (x1,y1), (x2,y2). Вторичный - хотя бы 2 вершины лежат по разные стороны от данного отрезка.