Форум программистов, компьютерный форум, киберфорум
AutoCAD
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/35: Рейтинг темы: голосов - 35, средняя оценка - 4.57
256 / 62 / 8
Регистрация: 29.05.2011
Сообщений: 1,616
1

Деление дуги на равные части. Измерение этих частей

04.06.2017, 12:51. Просмотров 6657. Ответов 7
Метки нет (Все метки)

Автокад 2010.
Задача максимум. Поделить дугу на равные части по условию, что размер этих частей не должен быть более известного значения, но максимальным для этого условия.
Задача минимум.
Подставляю различное количество частей. То есть методом тыка.
Да, разбивает красиво... Вот как узнать длину этих частей. Он мне не выделяет кусок дуги от маркера до маркера, а всю дугу целиком!(((
Помогите плиз!)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.06.2017, 12:51
Ответы с готовыми решениями:

Деление массива на равные части
Здравствуйте! Есть задание: "написать функцию, которая проверяет возможно ли поделить массива на,...

Деление массива на равные части (JS)
Как можно в JS поделить массив на равные интервалы? Например, на 4 равных интервала. for...

деление множество точек на две равные части
Есть у меня множество точек и окружность с произвольным радиусом. Мне нужно найти такие две точки,...

Веревку длиной k метров разрезали на 2 части. Найти длины этих частей веревки
веревку длиной k метров разрезали на 2 части, одна из них на n процентов длиннее второй. Найти...

7
VH
424 / 253 / 22
Регистрация: 23.11.2010
Сообщений: 278
05.06.2017, 00:30 2
Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
(defun C:F()
 ((lambda (selection size)
   ((lambda (data)
     ((lambda (angle radius)
       ((lambda (count)
         (command "_.DIVIDE"
          selection
          (+ (fix count) (if (> count (fix count)) 1 0))))
        (/ (* radius (+ angle (if (< angle 0) (* 2 pi) 0))) size)))
      (- (cdr (assoc 51 data)) (cdr (assoc 50 data)))
      (cdr (assoc 40 data))))
    (entget (car selection))))
  (entsel "\nSelect arc: ")
  (getreal "\nInput size: ")))
1
256 / 62 / 8
Регистрация: 29.05.2011
Сообщений: 1,616
05.06.2017, 00:49  [ТС] 3
VH, большое спасибо!
Простите мне мою безграмотность... вопросы.(
Это решение задачи максимум или минимум?
Что делать с этим скриптом? Я можно сказать впервые открыл автокад.
Какие данные и куда вставлять в этот скрипт?
Еще раз прошу прощения за невежество.(
0
VH
424 / 253 / 22
Регистрация: 23.11.2010
Сообщений: 278
05.06.2017, 01:29 4
Это текст программы на языке AutoLISP, которая добавляет в AutoCAD команду F, выполняющую необходимую Вам работу:
- запрос указания контура объекта (дуги) 'Select arc: '
- запрос ввода значения размера 'Input size: '
- вычисление количества частей дуги
- деление дуги
Проще всего выделить <LISPовский> текст программы, скопировать его в буфер, затем вставить в командную строку AutoCAD (если в командной строке слева есть символы ((_>, то нажать Enter). После этого на приглашение 'Команда: ' можно ввести имя команды F, нажать Enter и отвечать на запросы команды.
1
256 / 62 / 8
Регистрация: 29.05.2011
Сообщений: 1,616
05.06.2017, 07:49  [ТС] 5
VH, спасибо!
Еще уточнение. Lisp. Краем уха слышал, что есть дополнительные плагины, которые нужно устанавливать дополнительно. Речь идет как раз об этом, или автокад со скриптом и сам разберется?
0
3234 / 1978 / 637
Регистрация: 02.11.2012
Сообщений: 5,118
05.06.2017, 08:54 6
1. замеряете дугу - команда _dimarc
2. на калькуляторе длину делите на ваш максимальный кусок- получаете количество кусков.
3. командой _divide делите на полученное к-во кусков.
П.С. точки деления могут быть не видны, тогда заходим вкладка ФОРМАТ - отображение точек - и корректируем отображение.
1
VH
424 / 253 / 22
Регистрация: 23.11.2010
Сообщений: 278
05.06.2017, 10:07 7
В AutoCAD 'скрипт' - это не программа на языке AutoLISP (VisualLISP), а отдельное средство <если вкратце - записанная в файл *.scr последовательность нажатий клавиш при работе в AutoCAD, повторно исполняемая посредством команды _SCRIPT (ПАКЕТ)>. Интерпретатор AutoLISP встроен в AutoCAD: как только в ответ на приглашение 'Команда:' ('Command:') в командной строке вводится открывающая скобка - к анализу приступает интерпретатор AutoLISP.
1
256 / 62 / 8
Регистрация: 29.05.2011
Сообщений: 1,616
05.06.2017, 17:42  [ТС] 8
Цитата Сообщение от Vlad999 Посмотреть сообщение
на калькуляторе длину делите на ваш максимальный кусок- получаете количество кусков.
Хм... действительно, просто и со вкусом!)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.06.2017, 17:42

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

Задача про деление массива на три равные по сумме части,не включая точки деления
Добрый день!Выкладываю описание задания на английском языке.В принципе алгоритм для меня ясен,но он...

Разделение текстового файла на переменное количество частей и перемещение этих частей
С Вашей помощью у меня получается создать папки с плейлистами @echo off setlocal...

Разбиение web-приложения на множество частей и сбор этих частей на стороне клиента в Веб-браузере
Здравствуйте! Есть стороннее WEB-приложение, с помощью которого на сервер можно отправлять...

Разбить массив на две равные части (или приблизительно равные)
Задали задание. Нужно разбить одномерный массив на две почти равные части(если на равные не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.