Перемещение геометрического объекта между системами координат.

Автор Тема: Перемещение геометрического объекта между системами координат.  (Прочитано 2554 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн БалиевАвтор темы

  • ADN Club
  • ***
  • Сообщений: 188
  • Карма: 2
Существует ли метод (или утилита)  позволяющий перемещать геометрический объект из одной системы координат в другую?
Заранее благодарен.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13830
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Балиев,
Метод TransformBy
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Отмечено как Решение Балиев 22-04-2020, 17:14:30

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13830
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Пример:
Код - C# [Выбрать]
  1. using Autodesk.AutoCAD.ApplicationServices;
  2. using Autodesk.AutoCAD.DatabaseServices;
  3. using Autodesk.AutoCAD.EditorInput;
  4. using Autodesk.AutoCAD.Runtime;
  5.  
  6. [assembly: CommandClass(typeof(TransformEntity.MyCommands))]
  7.  
  8. namespace TransformEntity
  9. {
  10.   public class MyCommands
  11.   {
  12.     [CommandMethod("TransEnt")]
  13.     public void TransEntHandler()
  14.     {
  15.       Document doc = Application.DocumentManager.MdiActiveDocument;
  16.       if (doc == null) return;
  17.       Editor ed = doc.Editor;
  18.       PromptEntityResult rs = ed.GetEntity("\nВыберите примитив: ");
  19.       if (rs.Status != PromptStatus.OK) return;
  20.       using (Transaction tr = doc.TransactionManager.StartTransaction())
  21.       {
  22.         Entity ent = tr.GetObject(rs.ObjectId, OpenMode.ForWrite) as Entity;
  23.         ent.TransformBy(ed.CurrentUserCoordinateSystem.Inverse());
  24.         tr.Commit();
  25.       }
  26.     }
  27.   }
  28. }
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение