Небольшую (менее 700 линий кода) математическую программу на Паскале (написана была на Турбо Паскале) необходимо переписать на Перле. Перловская программа должна работать под Юбунту. Программа должна быть переписана на Перле с максимальным сохранением первоначальной структуры, поэтому ...
C# приложение для рисования направленных графов
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.
Нужно создать приложение, которое позволяет пользователю рисовать направленный граф на C#. Обратите внимание – любой направленный граф, а не только дерево или интеллект карту!
Для дальнейшего описания определимся с терминологией. Узлы (или ноды) – вершины графа. Связи – ребра графа.
Узлам должна быть возможность задавать размер, иконки, текст. Во внутреннем представлении узла должно присутствовать текстовое поле Description. Желательно сделать нод такой формы prntscr.com/dk7xfc . Высота у него всегда одинаковая, а длина может меняться в зависимости от длины текста в нем. Из вышесказанного также делаем вывод – текст должен всегда находиться в ноде
Для связей нужно иметь возможность задать текст (который лежит на ребре) и оформление. На конце связи (то есть на узле, куда приходит связь) должна быть стрелочка prnt.sc/dk7yea
Требования к внешнему виду: жестких нету, но по возможности посимпатичнее) Чем ближе Mindjet MindManager , тем лучше)
Должно поддерживаться:
1. при нажатии на нод он должен просто выделяться (для выделеного пусть будет окаемка какая то специфическая prntscr.com/dkuyg9 )
2. Перемещение узлов: зажали мышку захватили и несем куда хотим. Когда завершили движение и отпустили мышку – все передвижение закончилось.
3. При клике левой кнопкой мышки на свободном участке экрана – создается нод.
4. при наведении мышки на нод у него на каждой из сторон появляются кружочки (по аналогии как здесь плюсики prntscr.com/dkuxk0 ). Для создания связи между двумя нодами пользователь должен сделать mousedown на одном из кружочков исходного нода и дотянуть мышку до другого нода. Таким образом у нода 4 кружочка и от любого из них может отходить к другим нодам любое количество связей. Связи на других нодах заканчиваются в произвольной локации.
5. Отображение поля Description нода. Создаем панель справа (она ВНЕ поля для рисования нодов). При выделении конкретного нода на панели отображается поле RichTextBox, в котором выводится Description этого нода. Пользователь может его редактировать. При снятии выделения новое значение (отредактированное) автоматически сохраняет как актуальный Description prntscr.com/dkuz6m
Будущее:
- Автомасштабирование расположения новых вершин с окружения (других вершин), среди которых они созданы.
- Возможность делать дуговые ребра prntscr.com/dml2hu
Нарисованный граф должен сериализоваться в xml (и соответственно десериализоваться).
Приложение делаем на C# .NET4 под VS 2012. На выходе – проект с исходниками. Можно юзать любую готовую бесплатную либу. Обсудим варианты готовых решений или технологий на базе которых реализовать. Можно, например, на WPF. После реализации отдельно нужно будет создать документацию.
- Похожие заказы
- Прикладное ПО4 заявкиЗакрыт7 лет назад
Для лабораторной работы нужен архиватор ТЗ: - Нужен архиватор, похожий внешне на WinRAR - Можете найти и взять любые готовые исходники и поправить только название, окно о программе - Скомпилировать в ехе
Прикладное ПО1 исполнительЗакрыт7 лет назад- $50
Нужна помощь в написании парсера Org-файлов с использованием Parsec (Haskell). Общаться нужно будет посредством Skype, Email, TeamViewer.
Прикладное ПО1 заявкаЗакрыт7 лет назад - $100
Нужно научить меня пользоваться OrgMode посредством общения и удалённых сессий (TeamViewer, Skype, Email), а также провести обзор исходников пакета org. Нужно будет провести серию консультаций до полного освоения OrgMode. От вас нужно знание исходников Emacs ...
Прикладное ПОнет заявокЗакрыт7 лет назад Запрограммировать 3 алгоритма семеричного шифрования + программу RSA шифрования Сроки сжатые 12 часов Жду ваших предложений по цене и срокам.
Прикладное ПО2 заявкиЗакрыт7 лет назадРазработан миниатюрный наручный GPS трекер, необходимо написать firmware. . знание 8-ми разрядных контроллеров производства SiLabs, ОПЫТ работы с GSM модулями (сервис пакетной передачи данных - GPRS), ну и Си разумеется. Взяли на данную задачу знаменитого ...
Прикладное ПО2 заявкиЗакрыт7 лет назадПростая программка под виндовс. Есть несколько обновляемых текстовых файлов, нужно их синхронизировать в один, собирая недостающие данные из них и фильтруя дубли строк. Учесть возможность забора из www. Ну и сигналить, если какие то из ...
Прикладное ПО1 исполнительЗавершен7 лет назадРазработать программное обеспечение для автоматизированной информационной системы "Учебная группа". База данных должна содержать сведения о студентах одной студенческой группы техникума, включая ФИО,пол,дату рождения,адрес проживания,телефон,сведения о родителях,рабочие телефоны родителей,номер студенческого билета, а также сведения об успеваемости ...
Прикладное ПО2 заявкиЗакрыт7 лет назадНужна программа для работы в лайм такси или яндекс через которую можно получать первым заказы указывая параметры заказов; Дальность поездки, радиус перехвата заказов и.т.д
Прикладное ПО1 заявкаЗакрыт7 лет назадС помощью библиотеки OpenCV (с++ или c#) необходимо написать программу выделения объектов на видео. Камера имеет статичное положение. Необходимо среди объектов определить человека и определить цвет его одежды. Нужно: 1) Определить, что это человек, а не собака или кошка. 2) ...
Прикладное ПО2 заявкиЗакрыт7 лет назад