Честно говоря сильно сомневался в целесообразности создания этой темы, но все же решил поделиться с народом. - Суть в чем, в один прекрасный день у меня возникла задача подсчитать площади отделки фасада, но задача осложнялась тем, что фасад был довольно заковыристый и большим количеством округлых форм и т.д. Помучавшись с наложением сеток 100х100 и последующим примерным подсчетом количества квадратиков, стал задумываться об автоматизации процесса. В результате непродолжительных раздумий накарябал простенькую програмку для расчетов. - Алгоритм расчета основывается на плотности точек (DPI) изображения, таким образом сложность исходных, нарисованных фигур значения не имеет. Программа буквально подсчитывает количество точек определенного цвета в исходном изображении и исходя из заданного значения DPI и масштаба расчитывает площадь, занимаемую этими точками. вот пример работы:
- На данный момент, я уже слабо представляю свою работу без неё. Возможно кто-то считает с помощью автокада, но как мне кажется этот способ все-таки проще и быстрее. - Прекрасно понимаю, что возможно многие незахотят её даже попробовать, ввиду боязни вирусов и т.д. На мои заверения в том, что программа чиста (писал то сугубо для себя) большинство неповерят. Любому желающему могу выслать исходник, код прост, как три копейки, написано в Delphi 2010 "на коленке" за час. В общем и целом - решать вам. Если хоть кому-то принесет пользу, значит топик создан не зря. Микро Help к программе прикрутил.
А скрипт Get Area для Corel Draw чем плох? Можно вычеслить как площадь, так и периметр кривой.
цитирую один из коментариев:
>>площадь буквы "О" считает как сумму площадей двух овалов
Кстати, да. Считает с ошибкой площадь сложных фигур - площадь "дырки" не отнимает, а прибавляет к площади наружного контура.
Это, пожалуй, единственный минус этого макроса
В моем случае я независим ни от чего, любая форма, любое количество дыр и т.д. и главное любая версия Корела или другой программы, так это отдельная самостоятельная прога
На сайте c 25.10.2009
Сообщений: 72
Харьков- Москва
Полезная вещь. Обязательно попробую при случае. Часто бывают трудности с просчётом площади, надеюсь ваша программка в этом поможет справляться быстрее. Спасибо большое!
На сайте c 25.02.2009
Сообщений: 2637
Липецк projectbp.ru
messian512 пользую Get Area, сложные контуры разбиваю так чтобы небыло "дырок" к примеру достаточно через сложный контур провести линию и выполнить trim
Но тем неменее спасибо за труды. Попробую ваш алгоритм.
Kudryashov, сложно такое представить, но при должном знании пакета и назначении горячих клавиш - автокад не нужен.
К тому же работа с цветом, текстом, текстурами и градиентами в кореле в разы лучше чем в любых кадовских приложениях.
messian512
можно привести хоть один пример, целесообразности(необходимости) просчета площади, у таких сложных форм как данный тростник?
А вот как раз таки этот тростник и есть пример. Была такая задача. И кстати говоря, нарисован он не особо аккуратными сугубо замкнутыми линиями, там достаточно много наложений объекта на объект. Зачем считали? Для подачи сметы заказчику, достаточно дорогое покрытие было (ну относительно дорогое). Что именно - непомню, да и не пытаюсь запоминить. Я так сказать только техник, а не дизайнер.
А еще бывает, чертят на кульмане и даже на листе ватмана.
К Вашему сведению, корел, как и любая векторная программа - это инструмент, заточенный под реальные задачи, а не просто залить прямоугольнички - кружочки.
И с каждой версией это программа становится только работоспособней.
Quote:
Как бы да, но отнять от общей площади площадь отверстия не большая проблема... хм, про ошибки не вкурсе, из того, что считал вроде траблов небыло
А для меня морока. После установки Get Area так и не понял ее создателей, чем они руководствовались.
Вторая проблема - неподсчет разомкнутого периметра. Постоянно приходится замыкать и вычислять дополнительно.
Quote:
messian512 пользую Get Area, сложные контуры разбиваю так чтобы небыло "дырок" к примеру достаточно через сложный контур провести линию и выполнить trim
узор нарисован методом наложения кругов друг на друга, для того, чтобы рассчитать площадь зеленой и красной поверхностей с помощью Автокада или макроса, мне пришлось бы сначало все это дело "потримить", в противном случае я получу сумарные площади кругов, а не только видимых частей. Лишние телодвижения однако.
Quote:
на cdrpro.ru выложите. там порадуются
Смысла нет. ygoryan то по сути тоже прав, подобные задачи не часто возникают. Прогу я написал года три назад, никогда не планировал кидать в массы, не задумывался о том, нужно ли что-то подобное кому-то. Просто буквально сегодня, в очередной раз считая площади плитки, подумал, почему бы не предложить на общее обозрение. Глядишь, может и пригодится кому. Тем более мне ж там наверное регистрироваться нуно. Лень. Да и опять отвечать на те же вопросы, что и тут - тоже лень.
Lyapsus
Get Area не единственный скрипт для корела, есть и такие которые сразу считают с "дырками" (только в сумме почему то))))
Остается только взять калькулятор и из большего отнять меньшие:
Корел с кадом не особо дружит, некорректно импортируется, что корел в кад, что кад в корел.
Кореловский вектор кад понимает незамкнутыми линиями - все равно обводить приходится.
Касаемо интерьеров, площадь считаю чаще всего вручную - на калькуляторе, так надежнее.
Если уж совсем кривая кривых, то паркет или плитку проще считать пальцем - поштучно.
Опять же вернее выйдет, чем площадь.
Потому как GetArea мне однажды выдала, что прямоугольник 100 на 100 см в масштабе 1 к 1 это оказывается 0,99 кв.м.
В общем, доверяй, но проверяй.