Плагин для операций с многоугольниками

Плагин для операций с многоугольниками - Messages

#1 Posted: 4/14/2012 1:15:39 PM
tca

tca

11 likes in 15 posts.

Group: User

Создал простенький плагин к Generic Polygon Clipper. Может быть будет полезен не только мне.
Для тех кто захочет "поковыряться" в исходниках прошу прощения за плохой английский и C#.
GPCPlugin.zip (166 KiB) downloaded 129 time(s).
3 users liked this post
Andrey Ivashov 4/14/2012 6:01:00 PM, Fridel Selitsky 4/15/2012 12:49:00 AM, kmihaylovich 4/16/2012 2:47:00 AM
#2 Posted: 4/14/2012 6:02:06 PM
Andrey Ivashov

Andrey Ivashov

2269 likes in 3730 posts.

Group: Super Administrator

Здорово! Спасибо.

Прикладываю скриншот:



Исходники плагина положил в репозиторий тут: https://smath.info/svn/public/plugins/GPCPlugin.
Описание General Polygon Clipper library можно найти здесь: http://www.cs.man.ac.uk/~toby/gpc/.

С уважением, Андрей Ивашов.
#3 Posted: 4/15/2012 1:07:20 AM
zhuk

zhuk

13 likes in 120 posts.

Group: User

Возможна ли проверка принадлежности точки или другого объекта контуру? Скажем, в методе Монте-Карло для определения площади можно будет такием образом задавать контур объекта?
Пора уже создавать специальный топик с плагинами в разделе Скачать SMath Studio, что бы не вылавливать их по отдельным темам и лишь для своих (или реких счастливчиков, которым повезло случайно нарваться на него).
неофициальный справочник https://sites.google.com/site/mikkhalichlab/home jabber конференция smath@conference.jabber.ru
1 users liked this post
Mikka 4/17/2012 11:03:00 AM
#4 Posted: 4/15/2012 2:30:19 AM
tca

tca

11 likes in 15 posts.

Group: User

GPC не имеет функций для проверки нахождения точки внутри многоугольника.
Данную проверку можно реализовать двумя вариантами (первый рабочий):
1. Из точки сделать многоугольник и проверить их пересечение (прикреплено вложение):
2. В библиотеке GPC есть функция возвращающая список треугольников, представляющих многоугольник (триангуляция)
gpc_polygon_to_tristrip(...). Однако в плагин я её не добавлял. Для треугольников проверка вхождения точки элементарна.
GPC - Проверка нахождения точки в многоугольнике.zip (1 KiB) downloaded 61 time(s).
1 users liked this post
kmihaylovich 4/16/2012 2:47:00 AM
#5 Posted: 4/16/2012 8:35:49 AM
Медведев Виктор

Медведев Виктор

13 likes in 157 posts.

Group: User

Wrote


Пора уже создавать специальный топик с плагинами в разделе Скачать SMath Studio, что бы не вылавливать их по отдельным темам и лишь для своих (или реких счастливчиков, которым повезло случайно нарваться на него).


По поводу топика полностью поддерживаю. А если Андрею будет несложно, то пусть вносит все появившиеся плагины в состав SMath (естественно, если создатели не будут против).
#6 Posted: 5/2/2012 2:31:14 AM
tca

tca

11 likes in 15 posts.

Group: User

Финальная версия плагина.
Добавлены функции осуществляющие триангуляцию многоугольника.
Во вложении (GPCTestAdd.png) приведен пример расчета площади многоугольника - продолжение графического файла из второго поста данной темы.
P.S. 64 битная версия работает в 2,0-2,5 раза быстрее.
GPCTestAdd.png
1 users liked this post
Serg 1/25/2014 12:55:00 PM
#7 Posted: 5/2/2012 11:39:03 AM
уни

уни

156 likes in 355 posts.

Group: User

Есть такая очень удобная программа: Visual SVN (клиент), которая позволяет заливать изменения кода сразу в местный репозиторий. Для этого нужно попросить у Андрея доступ на запись, слить рабочую копию вашего плагина из репозитория, открыть проект плагина в VS, сделать измненения и залить обратно в svn при помощи меню в VS.

Андрей использует VisualSVN сервер для web-доступа к репозиторию. Вещь хорошая.

П.С. Можно попрактиковаться на mysvn.ru. Там можно создавать удалённые репозитории до 20 Мб бесплатно. Можно создавать и удалять репозитории и попробовать разные режимы и команды VisualSVN, чтобы знать как и что работает.

Пример как это выглядит в VS2010 (в 2008 точно также):


VisualSVN&VS2010.PNG
Россия навсегда! Вячеслав Мезенцев
#8 Posted: 5/3/2012 12:31:32 AM
tca

tca

11 likes in 15 posts.

Group: User

уни, это финальная версия плагина, так как все функции GPC импортированы в SMath Studio, возможны только bugfix'ы.
Никогда не пользовался всякими штучками, начинающимся с Visual. В Windows использую связку FAR+colorer+makefile+batfile.
С системами контроля версий знаком. У меня есть TortoiseSVN (скачивал репозитарий с плагинами).

1 users liked this post
Dzmitry 5/10/2012 4:15:00 AM
#9 Posted: 5/3/2012 8:21:30 AM
уни

уни

156 likes in 355 posts.

Group: User

Прямо уж и финальная, неужели отображение всех устраивает? А если появится компонент для раздельного отображения многоугольников или такая возможность?
Что касается Visual, то ведь SMath Studio вы пользуетесь? А это Visual-среда для математических расчётов в отличие от Maple, Mathematica, Matlab и пр. unix-клонов.

Про svn я на всякий случай напомнил. Тот же TortoiseSVN - это Visual-среда, в отличие от командного интерфейса, который идёт в комплекте. Нет ничего зазорного в том, чтобы использовать профессиональные инструменты разработки кода.

На картинке выше показан проект на С++ для микроконтроллера, который использует makefile для сборки с компилятором gcc (для avr). Хотя я собираю при помощи makefile, но разработку веду именно в VS2010, ибо это гораздо удобнее, чем писать то же в Far'е (навигировать и пр.).
Россия навсегда! Вячеслав Мезенцев
#10 Posted: 5/3/2012 1:08:26 PM
zhuk

zhuk

13 likes in 120 posts.

Group: User

Плагином не пользовался, но одобряю.
З.Ы. Только консоль! Только хардкор! visual* не нужны!
неофициальный справочник https://sites.google.com/site/mikkhalichlab/home jabber конференция smath@conference.jabber.ru
#11 Posted: 5/3/2012 2:15:45 PM
tca

tca

11 likes in 15 posts.

Group: User

Я пользуюсь тем чем мне удобно пользоваться и чем умею пользоваться. Моя основное занятие, это не программирование. Была потребность пользовался - CVS из командной строки. TortoiseSVN был скачан, чтобы скачать(клонировать) исходники плагинов для изучения. Плагин был написан для решения моих задач (построение различных областей с ограничениями) в SMath. Я поделился плагином с сообществом SMath пользователей. Сейчас дополнил оставшимися не импортированными функциями. Считаю поддержкой плагинов должны заниматься разработчики плагинов, а Андрей Ивашов (разработчик SMath Studio) должен вести разработку основного проекта. Распространять SMath Studio совместно со всеми плагинами, нельзя из-за возможных лицензионных ограничений, но имеет смысл создать установщик плагинов, на базе NSIS например, или хотя бы архива, который распаковывается в папку со SMath Studio.

Offtop о визуальности: SMath копирует лист бумаги, карандаш и ластик - вещи из реального мира и поэтому очень удобен в использовании в своей нише (типовые нересурсоёмкие расчеты), легок в обучении, но некоторые вещи на нем сделать затруднительно. Например, для построения качественных графиков - gnuplot, для качественной статьи со сложными формулами - LaTeX (Word очень неудобен) - это не визуальные инструменты, более сложные в использовании, но дающие всегда предсказуемое решение поставленных перед ними задач. Так что не все так однозначно.
echo "Мамы разные нужны, Мамы разные важны" | sed "s/Мамы/Приложения/g"

Реальный пример использования GPCPlugin.
ИО ДЗ SIEMENS 7SAxxx.png
1 users liked this post
уни 5/3/2012 2:42:00 PM
  • New Posts New Posts
  • No New Posts No New Posts