САПР для інженера
У повсякденній роботі часто стикаюся із завданням перетворення сплайнів в полілінії в AutoCAD. Опишу свій досвід у цьому питанні.
Є кілька способів перетворення, кожен з них дає схожі результати, але відмінності все ж таки є, в першу чергу, за точністю перетворення.
1. Команда редагування поліліній ПОВРЕД (_PEDIT)
Запускаємо команду та вибираємо створений раніше сплайн. Система видає повідомлення, що Вибраний об'єкт - не полілінія. На запит Зробити його полілінією відповідаємо Так. Також необхідно ввести точність перетворення від 0 до 99. Чим вище точність, тим точніше отримана полілінія буде відповідати сплайну.
Важливо! Змінна PLINECONVERTMODE задає тип сегментів, за допомогою яких буде перетворено сплайн: 0 – за допомогою лінійних сегментів, 1 – за допомогою дуг. Встановіть значення 1 для підвищення точності перетворення або 0 для зменшення точності. Вибір типу побудови залежить від конкретного завдання.
2. Команда редагування сплайнів РЕДСПЛАЙН (_SPLINEDIT)
Для перетворення сплайну на полілінію використовуйте команду РЕДСПЛАЙН (_SPLINEEDIT). Запустіть команду, виберіть сплайн, виберіть Перетворити на полілінію і введіть точність перетворення. Параметри точності подібні до команди редагування поліліній. Також на результат впливає змінна PLINECONVERTMODE.
3. Команда перетворення об'ємних об'єктів у плоскі FLATTEN
Запустіть команду FLATTEN із пакета Express Tools та виберіть сплайн. На запит Remove hidden lines дайте відповідь No або просто підтвердіть введення. Сплайн перетворюється на полілінію. Точність перетворення дуже висока.
4. Експорт у формат DXF версії AutoCAD R12
Якщо зберегти креслення у форматі DXF версії AutoCAD R12, всі сплайни, які є у файлі, будуть перетворені в полілінії.
Це найнебажаніший, але найшвидший спосіб перетворення. Всі сплайни викреслюються за допомогою дуже маленьких лінійних сегментів полілінії, які займають великий обсяг пам'яті.
У висновку хочу сказати, що кожен із способів дає схожий результат, але відмінності у простоті, швидкості та точності перетворення є. Потрібний спосіб треба вибирати залежно від необхідного результату.
Редагування Полілінії
Редагування полілінії включає операції, що призводять до зміни її ширини, додавання або видалення її сегментів або вершин, а також операції з перетворення (апроксимування) полілінії в сплайн.
Редагування поліліній виконується за допомогою команди Pedit, якою відповідають кнопка
Edit Polyline (Редагувати полілінію) в інструментальній групі Modify (Редагування) вкладки Ноте (Головна).
Після виклику Pedit у командному рядку буде виведено перший запит Select polyline or [Multiple], у відповідь який необхідно виділити полілінію і натиснути Enter. Потім, якщо виділений об'єкт є полілінією, система виведе набір параметрів, з яких виконується її редагування:
Enter an option [Close/Open/Join/Width/Editvertex/Fit/Spline/Decurve/Ltype gen/Undo]:
Параметри команди наступні:
- Close – замикає розімкнену полілінію шляхом додавання нового сегмента (якщо останній сегмент полілінії був прямолінійним, то замикання здійснюється додаванням прямолінійної ділянки, а якщо дуговим – для замикання будується дуговий сегмент);
- Open – розмикає замкнуту полілінію (якщо виділено розімкнену полілінію, то опція змінюється на Close);
- Join - перетворює відрізок або дугу в односегментну полілінію або додає до полілінії нові суміжні сегменти, якими можуть бути відрізки, дуги та інші двовимірні полілінії (параметр застосовується лише для розімкнених поліліній);
- Width – змінює ширину всіх сегментів полілінії на нове постійне значення (нове значення товщини вводиться з клавіатури або за допомогою двох точок на екрані);
- Edit vertex – переводить полілінію в режим редагування її вершин (переміщення, видалення непотрібних, додавання нових тощо);
- Fit – перетворює полілінію за допомогою дугових сегментів на криву, що проходить через вершини полілінії;
- Spline – апроксимує (згладжує) полілінію в сплайн, який проходитиме лише через початкову та кінцеву точки полілінії;
- Decurve - скасовує результат, отриманий з використанням параметрів Fit та Spline;
- Ltype gen - управляє побудовою типу лінії (використовується для сегментів окремо або для всієї полілінії в цілому);
- Undo - скасовує останню операцію, виконану командою Pedit.
Якщо замість введення імені параметра натиснуто клавішу Enter, команда завершить свою роботу. Вибір однієї з наведених опцій дозволяє виконати одну з можливих операцій редагування. Параметри, що заслуговують на увагу, будуть докладно розглянуті далі.
Редагування вершин полілінії
Опція Edit vertex дозволяє редагувати вершини полілінії та сусідні з ними сегменти. Після вибору цієї опції AutoCAD виділяє першу вершину полілінії, причому ця вершина позначиться маркером X (рис. 8.31). Порядок проходження вершин ідентичний тій послідовності, в якій ці вершини створювалися при побудові полілінії. При цьому в рядку підказки з'являється новий набір параметрів:
Enter a vertex editing option [Next/Previous/Break/ Insert/Move/Regen/ Straighten/Tangent/Width/eXit] :
Параметри команди наступні:
- Next і Previous – переміщують маркер редагування відповідно до наступної або попередньої вершини полілінії;
- Break – розбиває полілінію на дві частини або відсікає одну її частину шляхом завдання однієї чи двох точок;
- Insert – вставляє нову вершину після поточної;
- Move – переносить поточну вершину на місце;
- Regen - перемальовує (регенерує) екран;
- Straighten – випрямляє сегмент полілінії, розташований між двома зазначеними вершинами (дугові сегменти та відрізки, що знаходяться між зазначеними точками, видаляються та замінюються одним прямолінійним сегментом);
- Tangent – задає напрямок дотичної до поточної вершини для виконання операції Fit;
- Width - задає ширину полілінії на ділянці, що починається в поточній вершині;
- eXit – вихід із режиму редагування вершин.
Для розбиття полілінії параметром Break вказуються одна чи дві її вершини. У разі видаляються все сегменти, розташовані між зазначеними точками. При цьому перша вершина визначається до введення параметра Break, а друга - після. Для вибору другої точки у відповідь на питання Enter an option [Next/Previous/Go/eXit] необхідно вказати параметр Next або Previous таку кількість разів, щоб досягти необхідної вершини. Після того, як обидві точки будуть вибрані, в останньому рядку підказки вводиться параметр Go. Якщо потрібно розбити полілінію в одній вершині, цю опцію потрібно задати відразу після введення параметра Break. Якщо ж ввести параметр eXit, виконання команди перерветься.
Для додавання нової вершини використовується параметр Insert.Перед тим, як перейти до цієї опції, потрібно переміститися до точки, після якої додається нова вершина, і лише потім вказати Insert.
Якщо ви бажаєте видалити якісь вершини полілінії, скористайтеся параметром Straighten. ділянці, починаючи з поточної вершини і закінчуючи тією вершиною, в яку можна перейти, переміщаючись полілінією за допомогою параметрів Next і Previous. У свою чергу, параметр Go завершує операцію випрямлення.
За допомогою параметра Tangent можна визначити дотичне спрямування в позначеній маркером редагування вершині. Після того, як напрямок визначено, у поточній вершині з'являється стрілка (Мал. 8.32) Напрямок буде використаний лише у разі подальшого виклику операції згладжування полілінії за допомогою параметра Fit.
Параметр Width дозволяє ввести початкову і кінцеву товщину сегмента полілінії, що йде за виділеною маркером редагування вершиною. За замовчуванням кінцева товщина сегмента дорівнює початковій. рис. 8.33).
Для автоматичної побудови типу ліній використовується параметр Ltype gen, що дозволяє викреслювати безперервну (опція включена) або переривчасту (штрихпунктирну) лінію.
Працює ця опція як перемикач системної змінної PLINEGEN (рис. 8.33). Якщо сегмент полілінії має змінну товщину (рис. 8.34), параметр не можна застосувати.
Згладжування поліліній кривої
Для згладжування поліліній призначені два параметри – Fit та Spline. Параметр Fit будує криву, що складається з дуг кіл і проходить через усі вершини полілінії (рис. 8.35). У свою чергу параметр Spline також дозволяє згладити прямолінійні сегменти полілінії, але крива при цьому проходитиме тільки через першу і останню її вершини.
Зауважимо, що іноді використання параметра Fit не дає бажаного результату. У такому випадку можна спробувати ввести додаткові точки або вказати дотичний напрямок у деяких вершинах за допомогою Tangent. Після обробки полілінії параметром Tangent на ній з'являються додаткові вершини, які можна буде використовувати для досягнення потрібного результату.
При згладжуванні параметром Spline крива лише витягується у бік вершин полілінії, але з проходить через них (рис. 8.36).
Слід зазначити, що для згладжування можна використовувати два види сплайну: квадратичний або кубічний (рис. 8.37), причому кубічний сплайн дає найкращі результати.
При згладжуванні тип сплайн визначається значеннями системних змінних SPLYNETYPE і SURFTYPE. Якщо SPLYNETYPE=5, тоді формується квадратичний сплайн; значення SPLYNETYPE=6 використовує при згладжуванні кубічний сплайн. Разом про те змінна SURFTYPE визначає поверхню згладжування.Для побудови поверхні Безье цієї змінної слід надати значення 8. Значення SURFTYPE=5 визначає тип поверхні згладжування у вигляді квадратичного сплайну, a SURFTYPE=6 – кубічного сплайну.
Випрямлення полілінії
Для спрямування полілінії, попередньо згладженої параметрами Fit та Spline, використовується опція Decurve (рис. 8.38). При цьому нові вершини, що додаються при згладжуванні, видаляються, проте дотичні напрямки, створені параметром Tangent, зберігаються з метою їх повторного використання. Більш того, параметр Decurve можна застосовувати для спрямування будь-якої кривої, побудованої за допомогою Arc команди Pline. Параметр не можна застосувати лише в тому випадку, якщо крива була попередньо розбита параметром Break.
Перетворення сплайнів у полілінії на AutoCAD
Доброго дня!
У повсякденній роботі часто стикаюся із завданням перетворення сплайнів в полілінії в AutoCAD. Опишу свій досвід у цьому питанні.
Є кілька способів перетворення, кожен з них дає схожі результати, але відмінності все ж таки є, в першу чергу, за точністю перетворення.
1. Команда редагування поліліній ПОВРЕД (_PEDIT)
Запускаємо команду та вибираємо створений раніше сплайн. Система видає повідомлення, що Вибраний об'єкт - не полілінія. На запит Зробити його полілінією відповідаємо Так. Також необхідно ввести точність перетворення від 0 до 99. Чим вище точність, тим точніше отримана полілінія буде відповідати сплайну.
Важливо! Змінна PLINECONVERTMODE задає тип сегментів, за допомогою яких буде перетворено сплайн: 0 – за допомогою лінійних сегментів, 1 – за допомогою дуг. Встановіть значення 1 для підвищення точності перетворення або 0 для зменшення точності.Вибір типу побудови залежить від конкретного завдання.
2. Команда редагування сплайнів РЕДСПЛАЙН (_SPLINEDIT)
Для перетворення сплайну на полілінію використовуйте команду РЕДСПЛАЙН (_SPLINEEDIT). Запустіть команду, виберіть сплайн, виберіть Перетворити на полілінію і введіть точність перетворення. Параметри точності подібні до команди редагування поліліній. Також на результат впливає змінна PLINECONVERTMODE.
3. Команда перетворення об'ємних об'єктів у плоскі FLATTEN
Запустіть команду FLATTEN із пакета Express Tools та виберіть сплайн. На запит Remove hidden lines дайте відповідь No або просто підтвердіть введення. Сплайн перетворюється на полілінію. Точність перетворення дуже висока.
4. Експорт у формат DXF версії AutoCAD R12
Якщо зберегти креслення у форматі DXF версії AutoCAD R12, всі сплайни, які є у файлі, будуть перетворені в полілінії.
Це найнебажаніший, але найшвидший спосіб перетворення. Всі сплайни викреслюються за допомогою дуже маленьких лінійних сегментів полілінії, які займають великий обсяг пам'яті.
У висновку хочу сказати, що кожен із способів дає схожий результат, але відмінності у простоті, швидкості та точності перетворення є. Потрібний спосіб треба вибирати залежно від необхідного результату.