Как я могу рассчитать центр масс / гравитации для векторных объектов?

10

Я делаю мобильный (в смысле Колдера) с помощью лазерной резки из векторного файла (Corel Draw). У меня есть набор контуров, которые будут отдельными частями.

Есть ли способ в Corel (или другой программе) вычислить центр масс, чтобы я поместил отверстия для подвешивания кусков?введите описание изображения здесь

Джон
источник
Inventor сделает это, но это, вероятно, излишне для ваших нужд. Может быть, демо?
Сэм
3
Это звучит как математика. Мы просто группа графических дизайнеров здесь. ;)
DA01

Ответы:

9

Этот ответ может не учитываться, если вам требуется строго программное решение, но я нашел его интересным, поэтому решил поделиться. :)

Математическим способом было бы разбить фигуру на набор треугольников и сделать средневзвешенное значение их отдельных центров тяжести. Я не думаю, что какая-либо из популярных программ для рисования автоматизирует это для вас. Это можно сделать вручную, но это может не стоить вашего времени.

На этом сайте представлен физический подход, который может ускорить ваше время: http://www.scn.org/~bh162/center_of_mass.pdf

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

  1. Распечатайте и вырежьте копию вашей фигуры.
  2. Выберите 3 точки несколько близко к различным краям на вашем объекте.
  3. Используйте булавку или гвоздь, чтобы проделать отверстия в ваших 3 точках. Отверстия должны быть немного больше диаметра орудия, чтобы вырез мог свободно качаться.
  4. Повесьте свой предмет, используя булавку через одно из отверстий.
  5. Пока ваш объект висит, используйте строку и вес, чтобы сделать вертикальную линию и обведите ее.
  6. Повторите линию зависания и отвеса для других отверстий.
  7. Точка, где пересекаются все ваши линии, является центром тяжести вашей фигуры.
  8. Если ваши линии точны, вы должны быть в состоянии определить точный центр с 2 линиями, а 3-я линия только для дополнительной проверки.
Farray
источник
2
сказочные. мы настолько привыкли к тому, что программное обеспечение выполняет эту работу за нас, что иногда (часто) упускают из виду мысль о том, что лучшим решением является простое физическое решение!
Лорен-Клир-Моника-Ипсум
Я согласен: я собирался предложить вырезать его из пенопласта ...
Горацио
3

Я застрял с той же дилеммой, и с помощью Adobe Illustrator написал скрипт, который помещает маленькое отверстие в центр тяжести неправильного многоугольника. Работало отлично! После этой итерации я также добавил несколько фрагментов, чтобы создать отверстие чуть выше центра тяжести, чтобы гарантировать, что деталь хорошо сбалансирована, когда подвешена только к этой одной точке.

Загружаемый скрипт: CentroidFinder.js

Сообщение в блоге: поиск центра тяжести (центроида) многоугольника в Adobe Illustrator

Скотт С.
источник
1

Я экспортирую в очень большой файл PNG 3000 пикселей. Затем я перетащил в Algodoo (который теперь свободен). Поставьте ось туда, где вы хотите, и играйте в симулятор, и он покажет вам, где он находится вне баланса. Затем вы можете настроить свой рисунок, пока он не будет сбалансирован, где вы хотите.

Джордж Оу
источник