---
title: "ksCopyObj - Копировать объект"
type: guide
api: [api7]
domain: [drawing]
tags: [guide, api7, drawing, kscopyobj]
sources:
  - kscopyobj.html
---

*API экспортных функций > Редактирование графических объектов  > Функции редактирования объектов чертежа *


## ksCopyObj - Копировать объект

Пример...
Аналог данной функции при использовании Automation - метод ksDocument2D::ksCopyObj.
Синтаксис:
```
reference int ksCopyObj (reference obj,
double xb, double yb,
double xn, double yn,
double scale,
double ang);
Входные параметры:
obj    - указатель на объект,
xb, yb    - координаты базовой точки объекта,
xn, yn    - координаты нового положения базовой точки,
scale    - масштаб,
ang    - угол поворота в градусах.
Возвращаемое значение:
указатель на полученный объект или группу объектов    - в случае удачного завершения,
0    - в случае неудачи.
```
Примечание:
1. Если указатель на объект равен нулю, то копируются выделенные объекты документа.
2. Значения xb,yb, xn,yn задаются в системе координат текущего вида.
3. При копировании одиночного объекта новый объект создается на текущем слое текущего вида.
4. При копировании группы объектов слой сохраняется.
5. При копировании одиночного многослойного макрообъекта он перестает быть многослойным. Макро и входящие в него объекты переносятся на текущий слой. Для копирования многослойного макро с сохранением многослойности требуется добавить его в группу.


## ksCopyObj - пример использования

ViewParam par;
int number = 5;
par.x = 20;
par.y = 60;
par.scale = 1;
par.ang = 0;
par.color = RGB(10,20,10);
par.state = stACTIVE;
strcpy(par.name, "user view");
//создали вид
reference v = CreateSheetView(&par, &number);
//создали слой
Layer(5);
LineSeg(20, 10, 20, 30, 1);
LineSeg(20, 30, 40, 30, 1);
LineSeg(40, 30, 40, 10, 1);
LineSeg(40, 10, 20, 10, 1);
//копируем вид (для вида точки задаются в листовых координатах)
reference p = ksCopyObj(l1, 20, 60, 40, 80, 1, 0 );
LightObj (p, 1);
Message("Подсветили скопированный вид");
LightObj (p, 0);
//сдвинули скопированный вид
MoveObj(p, 50, 0);
