• Как расчитать 2 угла наклона?

    @BlinCT Автор вопроса
    Rsa97, аргументов никаких нету. Я рисую с помощью Qt

    ShapePath
                {
                    id: trackShapeAlarm
                    capStyle:    Qt.FlatCap
                    fillColor:   "transparent"
                    strokeColor: root.pelData.gaugeAlarmShape.colorAlarmShape
                    strokeWidth: (root.pelData.mainCircleBorderWidth - 2.0)
    
                    PathAngleArc
                    {
                        centerX: root.halfMinWindowSide
                        centerY: root.halfMinWindowSide
                        radiusX: (root.halfMinWindowSide - (root.trackWidth / 2.0))
                        radiusY: (root.halfMinWindowSide - (root.trackWidth / 2.0))
                        startAngle: root.pelData.gaugeAlarmShape.startAngleAlarmShape
                        sweepAngle: root.pelData.gaugeAlarmShape.sweepAngleAlarmShape
                    }
                }


    Как видите тут я в startAngle передаю начало, в моем случаи это там где находится 0, а в sweepAngle угол там куда указывает стрелка с текущим значением. По этому никаких аргументов, просто надо мне высчитать правильно.
    Написано
  • Как расчитать 2 угла наклона?

    @BlinCT Автор вопроса
    Rsa97, и еще, у меня же 2 варианта такого выделения цветом. когда стрелка меньше 0, и нужно левее от 0 поулчать угол, и когда стрелка больше 0 и тогда выделение будет в правую сторону.
    Написано
  • Как расчитать 2 угла наклона?

    @BlinCT Автор вопроса
    Rsa97, ну я выше описал. Сейчас покажу что я считаю.

    // on the dial the initial minimum value is located on the left side
    const double startAngle = -240.0;

    // on the dial the initial maximum value is located on the right side
    const double endAngle = 60.0;

    m_SweepAngle = startAngle + (endAngle - (startAngle)) * ( (m_CurrentValue - (-90)) / (m_ValueRange.m_Max - (m_ValueRange.m_Min)) );


    Как я выше описал, я пытаюсь посчитать угол для текущего значения. Мои диапазоны углов это -240 и 60.
    Правильный результат это если красная подсветка будет от 0(как видите это правильно), до стрелки.
    Рисую я фигуру со значениями от m_StartAngle который я выше считаю, и исходя из изображения выше правильно, до m_SweepAngle который я и пытаюсь посчитать
    Написано
  • Как расчитать 2 угла наклона?

    @BlinCT Автор вопроса
    Rsa97, так что тогда не так с этими расчетами?
    Написано
  • Как расчитать 2 угла наклона?

    @BlinCT Автор вопроса
    Вот как выглядит расчет для значения меньше 0.
    673eefb9ddf8f613241476.png

    на много дальше стрелки уползло.
    Еще раз для уточнения, мне нужно поулчить в данном случаи для текущего значения ниже 0. То есть 0 находится чуть левее от верхнего тикмарка со значением 6.5.
    Как видите тут позиция правильная, а вот зраница которая должна быть на текущем значении стрелки уехала аж до самого низа
    Написано
  • Как расчитать 2 угла наклона?

    @BlinCT Автор вопроса
    Rsa97, я правильно понимаю что для правильного определения в какой стороне от 0 значения находится стрелка мне надо исопльзоват ьв расчетах и углы и диапазон значений? Но разве угол на котормо находится значение 0 нам не нужен в расчетах?
    Написано
  • Как расчитать 2 угла наклона?

    @BlinCT Автор вопроса
    И еще вопрос, а использовать расчитаные углы текущего значения и угол где ноль мне разве не надо? Я что-то ваши расчеты вообще не понимаю. Зачем вы в расчетах и углы и значеняи используете?
    Написано
  • Ошибка в алгоритм получения интерполяции с помощью Лагранжа?

    @BlinCT Автор вопроса
    Wataru, нет, у меня ничего автоматически не растягивается. Мне самому приходится расчитать точки, и потом на полотне сказать где эта точка находится. То есть если мне надо по шкале точку со значением 26 нарисовать, а при этом по этой ширине полотно у меня в 725 пикселей, то мне надо расчитать где эта точка должна находится. Вопрос был именно об этом. Как правильно этот коэфициент расчитать. И нужно ли это делать до алгаритма интерполяции или это лучше делать после?
    Написано
  • Ошибка в алгоритм получения интерполяции с помощью Лагранжа?

    @BlinCT Автор вопроса
    Wataru, предположим вертикальная шкала от 0 до 25, горизонтальная от 0 до 300.
    Есть набор точек, расчеты в конечном итоге будут рисоватся по пикселям. А теперь взяли и растянули график по горизонтале, и уже имеем не соответствие плоскости где мы рисуем и точек которые надо нарисовать.
    То есть изменилась ширина.
    Я об этмо расчете.
    Написано
  • Ошибка в алгоритм получения интерполяции с помощью Лагранжа?

    @BlinCT Автор вопроса
    Wataru, спасибо за этот пример. Сейчас изучаю и попробую переписать на кубтческий сплайн. Но все таки вопрос еще про зависимость точек от размера плоскости. То что я выше написал это правильно, так надо расчитывать?
    Написано
  • Ошибка в алгоритм получения интерполяции с помощью Лагранжа?

    @BlinCT Автор вопроса
    Wataru, а вы не могли бы написать как кубическим бы выглядил алгаритм расчетов?
    Я в теории понимаю что если точек больше 3 то считается 2 отрезка потом точка смещается на 1 и снова 2 отрезка. Но вот написать это очень не просто. Я этот вариант нарыл на форуме и то до конца его не понимаю.
    заранее спасибо.
    Написано
  • Ошибка в алгоритм получения интерполяции с помощью Лагранжа?

    @BlinCT Автор вопроса
    Wataru, тестирую то что вы посоветовали. И еще один вопрос, вот если изменяется размер области где мне надо нарисовать по точкам кривую, мне же надо пересчитать точки исходя из высоты и ширины обрасти?

    qreal Model::translateY(qreal y, qreal coeff)
        {
            if(y > 0)
            {
                return -y * coeff;
            }
            else if(y < 0)
            {
                return (y * coeff) * (-1);
            }
    
            return 0.0;
        }
    
        qreal Model::translateX(qreal x, qreal coeff)
        {
            return x * coeff;
        }


    Правильный ли это расчет? У меня просто по Y значения ооочень большие получаются.
    Второй аргумент это высота или ширина области деленая на максимальное значение на шкале.
    В моем тестовом случаи на вертикальнйо шкале это 25 а на горизонтальной это 300.
    Написано
  • Ошибка в алгоритм получения интерполяции с помощью Лагранжа?

    @BlinCT Автор вопроса
    Wataru, если я правильно вас понимаю то лист с набором точек X и Y надо разбить на 2 листа с индексом и точками соответственно?
    Получается на выходе из каждой функции я получу 2 листа с расчетами, потмо просто их обьеденить?
    Хотя погодите, как пример первый лист должен выглядеть так?
    0, 18
    1, 21
    2, 23
    3, 24
    4, 23
    5, 20
    Написано
  • Ошибка в алгоритм получения интерполяции с помощью Лагранжа?

    @BlinCT Автор вопроса
    Спасибо большое что ответили. А могу бы я вас попросить подправить или показать как должна выглядеть функции что вы описали? Для меня такие алгоритмы очень сложны.
    Заранее спасибо
    Написано
  • Как правильно повернуть в нужную сторону обьект?

    @BlinCT Автор вопроса
    hint000, на счет угла для последнего лимита я нашел ошибку, я не совсем правильно расчет делал, но исправил благодаря вашему примеру.
    А вот на счет стрелки я не знаю. Я для нее делаю такие же расчеты, кое что убрал и стрелка стала вплотную левым верхним углом в центр прямой, но так же находится на левой стороне.
    Есть предположение что графический обьект стрелки берет мои расчеты точки расположения, но не как центр а как левый угол верхний.
    Написано
  • Как правильно повернуть в нужную сторону обьект?

    @BlinCT Автор вопроса
    В общем не совсем получилось, у меня странно и стрелка повернута и один из лимитов.
    65fb1e9153c2f644507126.png

    Еще раз по углам, на изображении -100 это угол -240, а значение 100 это угол 60, может проблема в том что последнйи лимит надо по другому считать так как он вниз щитается от 0?
    Для синей стрелки я по вашему совету делаю, но вот большая стрелка смотрит в значение 0 правильно, угол для маленькой такой же а вот она где то в стороне
    Написано
  • Как настроить раид и кеш для приватного файлового сервера?

    @BlinCT Автор вопроса
    RStarun, ну у меня будут 16Тб диски если говорить о времени ребилда)
    А по поводу 6 раида, я вроде глянул надо от 4 дисков, и там потеря 30% с копейками, не 50%.
    Написано
  • Как правильно повернуть в нужную сторону обьект?

    @BlinCT Автор вопроса
    У меня они раньше расчитывались, ну то есть все точки, с этим проблем нету. Но менеджер сказал что есть готовые SVG и их надо юзать.
    Так что с точками уже не могу(
    Написано
  • Как настроить раид и кеш для приватного файлового сервера?

    @BlinCT Автор вопроса
    RStarun, по поводу 2.5 сетки это в планах, я сейчас прикидываю что надо брать и сколько всего надо.
    Я пока не понял если например самое важное будет у меня на 2 SSD дисках в зеркале, а например на HDD 16 Гб по началу то смогу ли я докупать диски и добавлять их к раиду. И все таки какой системой это все разбивать, так как советов много.
    Само собою бесперибойник будет тоже но не знаю можно ли его програмно с системой связать дял правильного выключения системы.
    Корпус чт оя планирую взять он на 6 HDD, 2 SSD. Но а на матери NVME уже под саму систему.
    Написано
  • Как правильно повернуть в нужную сторону обьект?

    @BlinCT Автор вопроса
    Спасибо, поулчилось с правильными наклонами
    Написано