Создание размеров

Автор Тема: Создание размеров  (Прочитано 194 раз)

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

Тема содержит сообщение с Решением. Нажмите здесь чтобы посмотреть его.

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

  • ADN OPEN
  • Сообщений: 14
  • Карма: 0
Создание размеров
« : 12-01-2018, 22:00:42 »
Здравствуйте! Помогите программно начертить размеры.
Есть чертеж:



Необходимо сделать линейный размер как на картинке.
В документации нашел что можно использовать  RotatedDimension.
Написал метод. При создании этого объекта надо указать угол поворота.
Не могу понять как правильно его вычислить.
В примере в доке там задается вот так:  acRotDim.Rotation = 0.707;
В каких единицах задается это значение? Явно не в градусах.
Как правильно его вычислить что бы этот размер стал ровно как на картинке?
Может такой размер как то строиться по другому? Не через RotatedDimension?
Спасибо.

Оффлайн Дмитрий Загорулькин

  • ADN
  • *
  • Сообщений: 1431
  • Карма: 301
  • LISP/C#, AutoCAD/Civil 3D
  • Skype: zagor_dmtr
Re: Создание размеров
« Ответ #1 : 12-01-2018, 22:04:10 »
В каких единицах задается это значение? Явно не в градусах.
В радианах.

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

  • Administrator
  • *****
  • Сообщений: 7235
  • Карма: 831
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Создание размеров
« Ответ #2 : 12-01-2018, 22:13:05 »
Необходимо сделать линейный размер как на картинке.
В документации нашел что можно использовать  RotatedDimension.
Пойдёт:


В примере в доке там задается вот так:  acRotDim.Rotation = 0.707;
В каких единицах задается это значение? Явно не в градусах.
В радианах. В AutoCAD все углы в радианах в внутреннем представлении.
Как правильно его вычислить что бы этот размер стал ровно как на картинке?
Нужно установить XLine1Point и Xline2Point (смотри на моей картинке).
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • ADN OPEN
  • Сообщений: 14
  • Карма: 0
Re: Создание размеров
« Ответ #3 : 15-01-2018, 14:16:07 »
День добрый! XLine1Point и XLine2Point я изначально и так задаю. Это ж получается основные точки, расстояние между которыми мне и надо измерять. Просто я изначально в вопросе не упомянул о них.
Просто я не могу понять как задать ровный угол поворота для того что бы размер был правильный.
Посмотрел только что информацию о переводе градусов в радианы.
В итоге для того, что бы повернуть размер на 90 градусов я вычислил такую формулу 90/1=П/180
Итого получается 90 градусов = П/2
В коде я задал так  -  Math.PI/2
После этого все получилось.
Такой подход правильный?
Либо надо делать как то иначе?
Спасибо!

Отмечено как Решение OlegSysa 15-01-2018, 14:55:12

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

  • Administrator
  • *****
  • Сообщений: 7235
  • Карма: 831
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Создание размеров
« Ответ #4 : 15-01-2018, 14:45:50 »
XLine1Point и XLine2Point я изначально и так задаю. Это ж получается основные точки, расстояние между которыми мне и надо измерять.
Нет. Это опорные точки. Расстояние меряется не между ними, а по проекции, которая зависит от угла поворота.
Итого получается 90 градусов = П/2
В коде я задал так  -  Math.PI/2
После этого все получилось.
Такой подход правильный?
Да, если ты меряешь расстояние по вертикали. Если по горизонтали, то угол 0.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • ADN OPEN
  • Сообщений: 14
  • Карма: 0
Re: Создание размеров
« Ответ #5 : 15-01-2018, 14:56:27 »
Ок, спасибо огромное! Буду делать дальше!