Аффинные преобразования на плоскости, C#

Рубрика: IT. Сети. Связь
Метки: |
Суббота, 16 апреля 2011 г.
Просмотров: 9059
Подписаться на комментарии по RSS

Примитивная программа, показывающая как проводить аффинные преобразования простейших геометрических объектов в матричной форме.

 

 

Реализована на основе математической библиотеки MathNet.Numerics, подраздела LinearAlgebra (сайт проекта).

 

 

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

Если что-то не работает, ругается на отсутствие библиотек или в чём-то нужен совет — спрашивайте в комментариях, отвечу.

 

Скачать исходники (MS VS 2010, 616 Кб) »

twitter.com facebook.com vkontakte.ru mail.ru friendfeed.com pikabu.ru blogger.com liveinternet.ru livejournal.ru memori.ru google.com bobrdobr.ru yandex.ru del.icio.us

Комментариев: 8

  1. 2016-03-18 в 18:53:55 | ann
    ]]>]]>

    Ошибка CS0246 Не удалось найти тип или имя пространства имен "MathNet" (возможно, отсутствует директива using или ссылка на сборку). GMiMG C:\Users\Рома\Desktop\gmimg\GMiMG\GMiMG\Form1.cs 9 Актив

    Подскажите как решить эту проблему.

  2. 2016-03-20 в 12:33:04 | Chewits
    ]]>]]>

    ann, какую версию Visual Studio используете, советую не ниже 2010.

    Чисто для проверки, скачал бесплатную версию Visual Studio Community Edition:

    https://www.visualstudio.com/ru-ru/products/visual-studio-community-vs.aspx

    Собрал в режиме Release и у меня все работает. Так что даже не знаю чем помочь. Посмотрите в дереве приложения, References (или "Ссылки") - там должна быть подключена библиотека MathNet.Numerics, похоже в вашем случае это не так - попробуйте добавить её вручную.

  3. 2016-03-20 в 13:02:36 | Chewits
    ]]>]]>

    Собственно, да, ошибка именно из-за режима Debug, а в моем проекте файлы .dll почему-то лежат в папке GMiMG/bin/Release. Так, конечно, делать не стоило, лучше пере-добавьте пакет MathNet.Numerics через средства VS (правой кнопкой мыши по "Ссылки"). Вобщем поиграйтесь с добавлением библиотек, я Visual Studio уже лет 5 не трогал, не могу сразу подсказать как это правильно делается :)

  4. 2016-03-22 в 18:33:57 | ann
    ]]>]]>

    Спасибо проблему решила.

  5. 2016-10-17 в 17:33:34 | Kerby

    Много ошибок 2-х видов: 1) Ошибка 6 Аргумент "1": преобразование типа из "double[*,*]" в "MathNet.Numerics.LinearAlgebra.Storage.DenseColumnMajorMatrixStorage" невозможно

    и 2) Ошибка 1 Наиболее подходящий перегруженный метод для "MathNet.Numerics.LinearAlgebra.Double.DenseMatrix.DenseMatrix(MathNet.Numerics.LinearAlgebra.Storage.DenseColumnMajorMatrixStorage)" имеет несколько недопустимых аргументов.

    Подскажите в чем проблема? Ничего в проекте не менял, запустил и добавил библиотеку MathNet.Numerics.

  6. 2016-10-17 в 17:37:52 | Kerby

    Ошибки в этой строчке и ей подобных:

    var transferalToABMatrix = new DenseMatrix(new[,] { { 1.0, 0, 0 }, { 0, 1.0, 0 }, { -a, -b, 1.0 } });

  7. 2017-11-28 в 02:16:48 | Юния

    А Вы можете помочь мне с выпускной работой немного совсем? Я Вам потом ее подарю. Работа хорошая, я над ней давно работаю. Тема "Графические возможности С#". Типа обучающая программа

  8. 2017-12-12 в 04:19:33 | Viti

    Kerby- качай библиотеку ниже v3.0

Оставьте комментарий!

Не регистрировать/аноним

Используйте нормальные имена.

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email.
(При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д.)



(обязательно)