Ответы пользователя по тегу C#
  • C++ или C# в рамках OpenCV проекта?

    На С++ будет работать быстрее(если правильно написать).
    На C# будет проще написать и быстрее написать.
    Я бы для такой задачи выбрал бы связку на C#:
    1)sqllite или mssql express в качестве бд. Sqllite если все данные хранятся локально.
    2) Для работы с бд в c# есть entity framework
    3) В качестве библиотеки компьютерного зрения я бы выбрал EmguCv. (Почти тоже самое, что и OpenCVSharp, но документация лучше, поддерживается лучше и в общем информации больше)
    4) Ну и в качестве интерфейса можно использовать winforms, хотя я бы написал на wpf

    Обосновать такой выбор можно сокращением времени разработки.

    По вопросу 1: Если бы это был реальный проект, то скорее всего часть для обработки изображений была бы написана на c++, а интерфейс на c#+wpf или с помощью какого нибудь фрейм ворка типа react.
    Ответ написан
    8 комментариев
  • Как сделать так, чтобы программа в WPF работала в двух режимах?

    Сделайте usercontrol с настройками, который будет отображаться только в режиме настройки.
    Или сделайте кнопку, которая будет открывать окно настроек и будет видна только в режиме настройки.
    Ответ написан
    Комментировать
  • Вырезать прямоугольник из Panel в WinForm C#?

    Как вариант.
    5c0009319fc88080499096.png
    using System;
    using System.Drawing;
    using System.Windows.Forms;
    
    namespace WindowsFormsApp1
    {
        public partial class Form1 : Form
        {
            internal bool IsCut = false;// Флаг.
            internal Point startPoint;//стартовая точка выделения
            public Form1()
            {
                InitializeComponent();
            }
            
            private void button1_Click(object sender, EventArgs e)
            {
                IsCut = true;
            }
    
            private void panel1_MouseDown(object sender, MouseEventArgs e)
            {
                if(IsCut==true)
                {
                    startPoint = Cursor.Position;//при нажатии кнопки мыши по panel запоминаем абсолютные координаты указателя мыши.
                }
            }
    
            private void panel1_MouseUp(object sender, MouseEventArgs e)//события "отпускания" кнопки мыши
            {
                if(IsCut==true)
                {
                    Size size = new Size(Math.Abs(startPoint.X - Cursor.Position.X), Math.Abs(startPoint.Y - Cursor.Position.Y));//вычисляем размер выделенной области
                    var bm = new Bitmap(size.Width, size.Height);// создаем bitmap заданного размера
    
                    Graphics graphics = Graphics.FromImage(bm as Image);
    
                    graphics.CopyFromScreen(startPoint, new Point(0, 0), bm.Size); //копируем часть изображения экрана в bitmap
    
                    pictureBox1.Image = bm; //выводим в picturebox
                    IsCut = false;// снимаем флаг необходимости выделения
                }
            }
        }
    }
    Ответ написан
    Комментировать
  • Почему не происходит обновление данных в ViewModel?

    @vakym Автор вопроса
    Разобрался при помощи ребят с телеграм канала.
    В данном случае обновление данных не происходит потому, что не правильно забиндил chekbox.

    В надо тоже добавить ItemsSource="{Binding Listc}"
    Ответ написан
    Комментировать