Inkscape: поместите круг по центру, а не по ограничительной рамке

14

Можно ли расположить круг в Inkscape, используя центр? Я создаю форму для лазерного резака, и круги должны очертить монтажные отверстия. Каждое отверстие составляет около 3,2 мм.

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

Это единственная ветка, которую я могу найти по этой теме, и, к сожалению, у меня нет ответа. Кто-нибудь знает, есть ли способ сделать это?

EDIT: Просто чтобы прояснить, я хочу , чтобы иметь возможность расположить отверстия точно с помощью xи yзначения , используя нижний левый угол листа в качестве начала координат.

Пластическая роща
источник
Рассматривали ли вы вместо этого что-то вроде Sketchup? Это звучит больше как задача для программного обеспечения САПР, чем программное обеспечение векторной иллюстрации
DA01

Ответы:

12

Создайте

Чтобы нарисовать круг, центрируя начальную точку, а не внутри рамки, мы можем нажать Shiftво время рисования. Для квадратного рациона (cicrle, а не эллипс) мы можем нажать Ctrlдополнительно.

Чтобы помочь начать с определенного узла, мы можем включить привязку к узлам каспа или к сетке.

Переехать

Чтобы переместить круг по его центру, нам нужно временно превратить его в дугу (в режиме траектории перетащите ручку круглой дуги). Затем мы можем привязать центр круга, например, к узлам излома, или к сетке, перетаскивая круг из его центра.

введите описание изображения здесь

Затем дугу можно снова преобразовать в окружность, нажав «сделать целиком» ( введите описание изображения здесь) в режиме пути.

Вручную отредактируйте x / y-position

Чтобы вручную отредактировать положение центра точного круга, мы должны выбрать объект, чтобы затем открыть XML-редактор ( ShiftCtrlX), где мы можем свободно редактировать значения центра cxи cy, задав любое значение, а затем нажать кнопку set .

введите описание изображения здесь

Takkat
источник
К сожалению, я должен уточнить , что , поскольку я позиционирование все с помощью xи yзначение , используя левый нижний угол , как происхождение, мне нужно , чтобы иметь возможность ввести значение непосредственно в мм. Привязка объекта к центру работает даже без преобразования его в дугу.
Пластическая роща
@PlastyGrove: см. Редактировать.
Таккат
7

Это своего рода временное решение, но оно может работать на вас.

  1. Создайте группу одинаково одинаковых кругов (например, все диаметром 3,2 мм).
  2. Расположите их без смещения, где вы хотите отверстие.
  3. Выделите все круги и переместите их так, чтобы они были правильно расположены (например, на 1,6 мм в каждом направлении), используя объект → преобразование → перемещение. Чтобы облегчить выбор кругов и избежать их пропуска, вы можете создать круги в их собственном слое.
  4. Если вы хотите, чтобы у некоторых кругов был другой размер, либо используйте object → transform → scale (который сохраняет центр), либо создайте круг правильного размера и используйте существующий круг, чтобы расположить его, используя вкладку выравнивания и распределения .
Wrzlprmft
источник
Спасибо за указание на transformвариант, я думаю, что это хорошая идея. Это будет работать, но опять же, мне нужно быть осторожным, чтобы выбрать все отверстия, прежде чем я нажму на преобразование. Меня беспокоит только вероятность возникновения ошибки.
Пластическая роща
@PlastyGrove: я сделал правку, касающуюся вашей проблемы.
Wrzlprmft
5

Если у вас много кругов и вы хотите расположить их по значению, считая расстояния снизу вверх, вам, вероятно, следует использовать язык сценариев или программу для работы с электронными таблицами, например LibreOffice-Calc или Excel, классический текстовый редактор с расширенной поисковой системой замены или Сочетание тех.

Возможно, у вас уже есть значения в простой машинной форме, например простой список значений (x, y, radius).

Затем вы можете вычесть значение y с формулой из размера страницы. Или вы создаете их и переворачиваете рисунок в конце по вертикали.

В редакторе вы можете использовать очень простой SVG-код для определения круга:

 <circle cx="50" cy="50" r="40" stroke="none" fill="red" />

После открытия с помощью inkscape и сохранения его, он будет преобразован в гораздо более сложный формат с относительными координатами. Но из таблицы значений в CSV-файле вы можете легко получить сотни кругов (я так и сделал).

Таким образом, вы можете сохранить пустой файл SVG, вставить круги с редактором перед закрывающим тегом, снова открыть его с помощью inkscape и редактировать его по мере необходимости.

Пользователь неизвестен
источник
3

Начиная с Inkscape 0.92.2, контрольная точка размещается в центре окружностей, что позволяет привязывать центр к точке пересечения сетки или другим объектам. Смотрите это видео для краткой демонстрации.

Правление ошибки
источник
2

Другие достаточно хорошо рассмотрели вашу проблему с исходной точкой.

Чтобы расположить объекты по центру, вы должны

  1. нарисуйте горизонтальные и вертикальные линии построения, которые пересекаются в центрах окружности. Сначала просто нарисуйте их в виде линий с ограничениями (ctrl + draw), затем установите координаты в поле в верхней части экрана.
  2. Нарисуйте круги нужного размера, используя координаты сверху. Это может быть быстрее создать, а затем скопировать его.
  3. Включите привязку , особенно для пересечений путей ( значок привязки пересечения пути) и центров вращения объектов ( значок привязки центра вращения).
  4. Перетащите свой круг к пересекающимся строительным линиям, и его центр зафиксируется на точном пересечении.

Не забудьте установить Tools / Geometric Bounding Box в Preferences, чтобы получить объекты нужного размера; если вы используете визуальную ограничивающую рамку по умолчанию, размер вашего объекта учитывает ширину линии. Вы можете этого не хотеть, хотя даже лазерные ножи имеют ширину прорези…

scruss
источник