[CDR 2017-2021] Доработать макрос расчета площади/периметра CorelDraw 2017

spacemakerman

Участник
Топикстартер
Сообщения
14
Реакции
0
Добрый день!

Есть макрос который нужно доработать, очень выручал при подсчете объемов! Сам в программировании не разбираюсь! Рассматриваю любые предложения!

Основные задачи:
1) Макрос должен работать под CorelDraw 2017 64бит
2) Считать площадь/периметр с учетом текущего масштаба документа и выводить площадь с учетом указанных единиц измерений.
3) Считать несколько выбранных объектов, сгруппированных с подгруппами в том числе.
4) Считать скомбинированные объекты.
Существующий интерфейс макроса устраивает – главное чтобы корректно и без ошибок считал
К заданию приложен макрос и Corel-файл с подробным описанием функционала Макрос для расчета площади.rar
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
Это предложение работы? Тогда велкам в личку
 

spacemakerman

Участник
Топикстартер
Сообщения
14
Реакции
0
Сообщения
355
Реакции
77
я вот только удалил свой пост - так как не уверен что я ничего не нарушил.... если кто подскажет буду благодарен ) - и выложу его снова )
 
Сообщения
355
Реакции
77
а насчет комбинированных объектов - выдели их и нажми кнопочку boundary, и посчитай), или если как на примере - то разрежь линией ) - правда это повлияет на периметр... дорабатывать нужно скрипт конечно...
 

spacemakerman

Участник
Топикстартер
Сообщения
14
Реакции
0
выдели их и нажми кнопочку boundary
где эта волшебная кнопочка? )

не получится
чаще приходится считать объекты похожие на это :
2017-09-25_16-22-48.png

дорабатывать нужно скрипт конечно...
Абсолютно поддерживаю и готов спонсировать )
 
Сообщения
355
Реакции
77
В этом случае только отдельно считать прямоугольники. а потом вычитать окружности.... Уважаемый МВК - а как бы мне узнать - можно ли этот скрипт в люди то нести) ?
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
В этом случае только отдельно считать прямоугольники. а потом вычитать окружности....
На самом деле, не все так просто - контура могут сложным образом друг на друга накладываться, по идее, надо перебирать всевозможные комбинации контуров и выделять фрагменты, которые ни с какими иными фрагментами не пересекаются, а это сходу не такая и тривиальная задача. 'hmmm'
Вдобавок, непонятно, как быть с единым самопересекающимся контуром.
Уважаемый МВК - а как бы мне узнать - можно ли этот скрипт в люди то нести) ?
Это не скрипт, а макрос c:(
У автора спросить, наверное, если он в эбауте указан. Если нет, то можно смело выкладывать.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
Так он вам подходит или надо комбинированные контуры допиливать?
И я все таки не понял насчет масштаба 'hmmm'
 

spacemakerman

Участник
Топикстартер
Сообщения
14
Реакции
0
Так он вам подходит или надо комбинированные контуры допиливать?
И я все таки не понял насчет масштаба 'hmmm'

комбинированные нужно допилить 'sos'
у этого скрипта все нормально с масштабом, он его учитывает
еще учел бы просьбу BazzilioTheCat (в удаленных комментариях), чтобы вставлял площадь шрифтом свойства которого установлены по умолчанию в документе. А не как сейчас, только черный и только ариал-болд-регуляр.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
у этого скрипта все нормально с масштабом, он его учитывает
Как учитывает?
шрифтом свойства которого установлены по умолчанию в документе.
Я не уверен, что доступ к умолчательным свойствам текста из скриптинга есть.
Там, имхо, свои умолчания
Еще один непонятный момент - допустим есть группа из черного прямоугольника и белого круга на нем. Как считается площадь - прямоугольник минус круг? Но,допустим, прямоугольник красный, а круг желтый - как тогда?
 

spacemakerman

Участник
Топикстартер
Сообщения
14
Реакции
0
в моем случае, независимо - считаются все цвета в одну сумму

Не по теме:
Но для перспективы и развития скрипта - интересная идея - подсчет площади по цвету - взял скриптовую пипетку, ткнул на нужную заливку и он тебе выдал всю площадь объектов с определенной заливкой :)
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851

spacemakerman

Участник
Топикстартер
Сообщения
14
Реакции
0
Т.е.и белый тоже?
Все объекты, у которых есть заливка? Даже в случае взаимного перекрытия?

заливка в виде свойства объекта не имеет значения, в примере что я приводил в корлевском файле, я заострял внимание про заливку чтобы было понятно что считается когда объект скомбинирован. Если даже такой объект без заливки то его площадь должна посчитаться - ровно в тех областях где он был заполнен заливкой.
Если где-то контур объекта не закрыт - то площадь не может быть посчитана.
 

spacemakerman

Участник
Топикстартер
Сообщения
14
Реакции
0
в примерах все объекты скомбинированы
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
Если даже такой объект без заливки то его площадь должна посчитаться - ровно в тех областях где он был заполнен заливкой.
Вот с этого момента непонятно
Допустим, вот такой вариант:
upload_2017-9-25_13-49-43.png

Если объекты скомбинированы, то понятно - площадь квадрата минус площадь круга
А если просто сгруппированы - площадь квадрата плюс площадь круга?
А вот такой тогда:
upload_2017-9-25_13-51-27.png

Здесь суммировать или вычитать надо если это группа? А если скомбинированно?