Задать вопрос
  • Алгоритм перевода RGB-компонент в длину волны?

    @U235U235
    Нужно преобразовать значение RGB в систему XYZ, затем на диаграмме xy (цветовой локус, CIE 1931) провести луч из точки белого (для заданого источника света A, C, D65...) через заданую точку xy. Точка пересечения луча с кривой спектральных цветов даст доминирующую длину волны. Для пурпурных цветов луч проводится в противоположную сторону. Обычно для них ставится штрих у лямбды. С програмной точки зрения можно использовать сплайны. Литература: Джадд, Вышецки. 614b2c0f414c6310716842.jpeg
    Ответ написан
    Комментировать
  • Доработать схему сигнализации сделать задержку с помощью конденсатора?

    @VT100
    Embedded hardware & software.
    есть у меня схема простой сигнализации.

    На картинке - она и есть?

    В настоящее время, такое проще всего делается на микроконтроллере. Будет меньше забот о необходимой ёмкости и её утечках, проще добавлять новые функции.

    Если желательно остаться в "аналоговой" схемотехнике, то я бы подумал над схемой на "таймер 555" (1-2 штуки). Там и контроль шлейфа будет и выдержка времени (мало зависящая от напряжения питания и температуры).
    Ответ написан
    Комментировать
  • Как понять, подключён ли кто-то к моему вайфай?

    Adler_lug
    @Adler_lug
    Сосед может банально микроволновкой пользоваться, а у вас Wi-Fi может глючить. Такое бывает.
    Или у него свой Wi-Fi, который работает на том же канале и может быть банальный конфликт. Для возможного исключения последнего в роутере поменяйте канал передачи на какой-нибудь другой. А еще лучше на телефон установите какой ни будь Wi-Fi Analyzer и посмотрите, какие каналы больше заняты и выберите какой-нибудь более свободный.
    Ответ написан
    Комментировать
  • Куда поступать после 9 класса на физика?

    xez
    @xez
    TL Junior Roo
    Лучше место, куда можно поступить после 9го класса - 10й класс
    Ответ написан
    Комментировать
  • Что с яркостью монитора?

    Stalker_RED
    @Stalker_RED
    Явно проблема с подсветкой, причем не с самими лентами, а с управляющей электроникой (ленты же включаются после прогрева). Скорее всего какие-нибудь конденсаторы сдохли, и ремонт будет недорогим.

    Несите в сервис. У вас больше шансов его угробить, чем починить самостоятельно.
    Ответ написан
    Комментировать
  • Произошло короткое замыкание, что делать?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Нести в сервис. Диагностика и ремонт цепей питания требует наличия специальных знаний, приборов, материалов, а также сервисной документации, которых у вас очевидно нет.

    (Если бы были, вы бы не спрашивали "что делать", а уже бы допаивали вылетевший ключ / контроллер / предохранитель)
    Ответ написан
    1 комментарий
  • Почему вырубается дрон при увеличении оборотов?

    @pfg21
    ex-турист
    проседает питающее напряжение ниже уровня отрубания процессора.
    без вентиляторов движки потребляют меньшую мощность и просаживают напругу не так сильно.
    Ответ написан
    6 комментариев
  • Вощможно запустить электронику после 10 лет простоя?

    gbg
    @gbg Куратор тега Электроника
    Любые ответы на любые вопросы
    Во-первых, это все чудо можно запускать только после инспекции технадзора.

    Во вторых, без отопления электронике как правило каюк - надо все вскрывать и делать ревизию - перетряхивать все клемники, и все платы.

    Все исполнительные механизмы под ревизию.

    Байка от Фиксика-Папуса по теме.

    Зная спектр ваших вопросов, лично вас бы я не подпускал к такому объекту на километр.
    Ответ написан
    2 комментария
  • Легально ли делать подобные сайты, какие будут последствия?

    borisdenis
    @borisdenis
    Ленив и вреден...
    Вот напишу я вам, что это абсолютно легально и вы мне поверите, а потом к вам вдруг придут злые дяди по поводу этого сайта и... что вы им скажете? Вот мне в интернете точно преточно сказали что так можно делать?

    Если есть риск потерять существенную сумму или получить проблемы с законом - не поленитесь и обратитесь к живому, не виртуальному юристу, за одну консультацию он много не возьмет, но при этом вы получите ответ от грамотного человека, который понимает законодательство, а не от непонятного человека из интернета, который от скуки решил пошутить и написал вам неверный совет, а вы ему поверили.
    Ответ написан
    3 комментария
  • В чем отличие Tc, Ta в datasheets?

    @VT100
    Embedded hardware & software.
    Вероятно, под Tc понимается температура кристалла. А под Ta - окружающей среды (с учётом рекомендованных условий монтажа - на стандартном стеклотекстолите с толщиной меди 35 мкм и её площадью 1 кв. дюйм).
    Конкретику-бы.
    Ответ написан
    2 комментария
  • Как получить верный результат в расшифровке?

    @dmshar
    Вы так и будете бегать с форума на форум, с каждой новой ошибкой в своей программе?
    Вчера я вам подсказал, в чем у вас ошибка, сегодня вы не справились со следующей. Пора бы научиться самому искать ошибки в своих скриптах, а не жить на подсказках.
    Так вы никогда программирование не осилите.

    Я уже не говорю о том, шифруя сообщения и создавая одновременно ключ для расшифровки - вы должны их оба передавать читателю. Причем, ключ той-же длины, что и само сообщение. Круто! Ладно, сообщение отправили по e-mail. А ключ как будете передавать - голубиной почтой или курьером? Это фундаментальная ошибка.

    А техническая - вы так и не разобрались, где и что у вас индексируется.
    Вот вам пища для размышления - решение вашей задачи (в той постановке, какую вы задали). Попробуйте разобраться сами что и как тут работает.
    def encrypt(msg):
        key = []
        new_msg = []
        alphabet = ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ !?.,")
        ind = 0
        while True:
            rannd = random.randint(0, 52)
            key.append(rannd)
            ab_temp = alphabet[rannd:] + alphabet[:rannd]
            new_msg.append(ab_temp[alphabet.index(msg[ind])])
            ind += 1
            if ind >= len(list(msg)):
                break
        print("Зашифрованное сообщение:")
        print(new_msg)
        print('Ключ:')
        print(key)
    
    def decipher(msg, key):
        alphabet = ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ !?.,")
        ind = 0
        new_msg = []
        while True:
            ab_temp = alphabet[key[ind]:] + alphabet[:key[ind]]
            new_msg.append(alphabet[ab_temp.index(msg[ind])])
            ind += 1
            if ind >= len(list(msg)):
              break
        print("Исходное сообщение:")
        print(new_msg)


    Шифруем:
    encrypt('Hello world')
    Зашифрованное сообщение:
    ['X', 'K', 'w', 'M', 'M', 'f', 'n', 'w', 'j', 'O', 'T']
    Ключ:
    [16, 32, 11, 27, 24, 10, 48, 8, 49, 29, 42]


    Расшифровываем:
    decipher(['X', 'K', 'w', 'M', 'M', 'f', 'n', 'w', 'j', 'O', 'T'], [16, 32, 11, 27, 24, 10, 48, 8, 49, 29, 42])
    Исходное сообщение:
    ['H', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']
    Ответ написан
    Комментировать
  • Где взять голый linux?

    @rPman
    Наиболее 'чистый линукс без графической оболочки без отпечатка какой либо компаний' - это gentoo, если речь идет об операционной системе а не о голом ядре, так как там в большинстве случаев пакеты собираются прямо из исходников, часто ссылка в .ebuild идет прямо на github. Само собой сами 'мейнтейнеры' gentoo так же оставляют отпечаток, в соответствующих патчах, подбору софта в репозитарии (portage) но в наименьшей степени, не мешая гибкости делать все это самому.

    p.s. если что графическая оболочка есть и у gentoo, по желанию, есть даже вариант с прекомпилированными бинарниками, все как вы любите - готовое на блюдечке но настроенное кем то другим.

    Самые подробные инструкции, а главное, проходя по процессу установки, начинаешь понимать как именно внутри все устроено, что очень важно для обучения. Огромное и дружелюбное сообщество, да и многие инструкции от arch подойдут, а так как при работе с gentoo появляется правильное видение концепций linux, инструкции из других linux типа ubuntu так же помогают, хотя начинаешь понимать ущербность большинства из них.

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

    Только gentoo позволяет оттюнить сборку на столько качественно, что потребление ресурсов (ram и диска) будут минимальны, на столько на сколько это в принципе возможно. И при этом очень много чего автоматизировано или снабжено удобными утилитами.

    Но и сил на это уйдет столько, что начнешь понимать, почему в мире именно этим процессом занимаются целые компании, так как в конечном счете с gentoo мейнтейнером ос становишься лично ты.
    Ответ написан
    3 комментария
  • Где взять голый linux?

    Compolomus
    @Compolomus
    Комполом-быдлокодер
    Ответ написан
    Комментировать
  • Как распаковать архив(без сжатия) из нескольких частей, если нет места на HDD на Linux?

    Adamos
    @Adamos
    Арендовать у того же хостера на сутки еще один такой же VDS, положить архив туда и примонтировать в систему, скажем, по sftp.
    Ответ написан
    Комментировать
  • Как распаковать архив(без сжатия) из нескольких частей, если нет места на HDD на Linux?

    gbg
    @gbg Куратор тега Linux
    Любые ответы на любые вопросы
    Его можно натурально примаунтить через archivemount
    Ответ написан
    Комментировать
  • Как сделать разрушаемость?

    @MarkusD
    все время мелю чепуху :)
    Коротко о разрушаемости в Noita излагается в презентации разработчиков на GDC.
    Детальное описание разрушаемости в Jelly in the sky от автора игры: [1], [2], [3].

    В Червяках же реализация разрушаемости довольно простая.
    Мат. модель уровня состоит из битовой матрицы (где поднятый бит является заполненным, а снятый - пустым), и набора функций рисования в этой матрице. В этой битовой матрице изначально генерируется уровень и эта битовая матрица модифицируется в процессе игры. Функции рисования являются стандартными - это рисование линии от точки и до точки с заданной шириной, а так же рисование залитой окружности. Само рисование происходит нулевыми битами.
    По своей сути Червяки являются таким замысловатым редактором для рисования.
    Ответ написан
    4 комментария
  • Как выбрать счётчик электроэнергии совместимый с Arduino?

    @AlexSku
    не буду отвечать из-за модератора
    Я вам расскажу, как делают в "промышленности", но это реально работает, дальше можно копать в сторону удешевления и упрощения.
    1) Электросчётчки Меркурий со своим протоколом типа Modbus-RTU (RS-485).
    2) От фирмы Инсат OPC-сервер опроса. Можно получать несколько сотен данных, но я показываю несколько основных:
    60f6711479c82651630655.png

    3) Какую-нибудь SCADA (у Инсата есть MasterSCADA v.3 и 4).
    Ответ написан
    3 комментария
  • Где то слышал что префиксный инкремент работает быстрее чем постфиксный. Это так?

    @res2001
    Developer, ex-admin
    Не замерял скорость. И даже не смотрел в дизасемблере реализацию.
    Но предлагаю просто разложить обе операции на примитивные ассемблерные инструкции (где нет инкремента, данные хранятся в памяти, а считаются в регистрах). Примерно так будет в псевдокоде:
    int preinc(int i) {
      mov r1, [i];
      add r1, 1;
      mov [i], r1;
      return r1;
    }
    int postinc(int i) {
      mov r1, [i];
      mov r2, r1;
      add r2, 1;
      mov [i], r2;
      return r1;
    }

    Видно, что у постфиксного варианта на одну операцию больше, чем у префиксного. А так же постфиксный использует 2 регистра, тогда как префиксный 1.
    Логика работы префиксного проще и понятней. Так что используйте по умолчанию всегда префиксный. И только тогда когда действительно необходимо постфиксный.

    А теперь представьте, что операция производится не надо встроенным типом, а надо классом. В этом случае дополнительные затраты могут быть гораздо существенней.
    Ответ написан
    2 комментария
  • Можно ли менять логический оператор в зависимости от переменной?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    if (f_pos.x * x_direction > R) {
        rot_direction2 = false;
    }
    Ответ написан
    Комментировать