На екрані модель здається справною, але слайсер показує діри в стінках, пропускає шари або взагалі відмовляється нарізати файл. Часта причина — перевернуті нормалі: частина трикутників сітки спрямована всередину, хоча має бути назовні. У звичайному затіненому вигляді такі трикутники нічим не відрізняються від сусідніх, тож проблема лишається непомітною аж до спроби друку.
Режим перегляду Нормалі в STLViewer робить її видимою. Він забарвлює кожну поверхню залежно від того, куди вона спрямована, тому трикутник, повернутий не в той бік, отримує інший колір і одразу впадає в око. Режим працює з файлами STL, 3MF і PLY просто у вашому браузері.
Що таке нормаль?
3D-модель для друку — це оболонка з пласких трикутників. Кожен трикутник має два боки: один спрямований назовні деталі, другий усередину. Нормаль — це уявна стрілка, що виходить із трикутника перпендикулярно з його зовнішнього боку. Саме з неї програма знає, який бік де.
Цю стрілку ніхто не малює вручну. Програма визначає її з порядку, у якому три вершини трикутника записані у файлі. Файл STL додатково зберігає стрілку як три числа біля кожного трикутника. Докладніше про сам формат читайте в статті Що таке STL файл?
Коли всі стрілки спрямовані назовні, слайсер розуміє, де матеріал. Грані, чиї стрілки спрямовані всередину, називають перевернутими. Слайсер може сприйняти таке місце як діру, лишити розрив у стінці або повідомити, що модель неможливо надрукувати. Перевернуті грані зазвичай з'являються після дзеркального відбиття деталі, після об'єднання сіток із різних програм, у 3D-сканах або після невдалого експорту.
Помітити їх важко, бо більшість переглядачів, зокрема режим Суцільний у STLViewer, малюють обидва боки трикутника однаково. Це зручно для огляду моделі, і саме це приховує грань, повернуту не в той бік.
Крок 1 — Відкрийте модель
Перейдіть на stlviewer.online і перетягніть файл STL, 3MF або PLY на сторінку. Модель одразу відкриється в переглядачі. Обліковий запис не потрібен, а файл лишається на вашому пристрої: нічого не надсилається, доки ви самі не вирішите поділитися моделлю.
Крок 2 — Увімкніть режим перегляду Нормалі
Перша група кнопок на панелі інструментів перемикає режим перегляду: Суцільний, Каркас, Рентген і Нормалі (значок веселки). На вузькому екрані видно лише значки.
Натисніть Нормалі. Матеріал моделі заміняють яскраві кольори: переважно синій і фіолетовий, а ближче до країв рожевий, бірюзовий і пурпуровий.
У цьому режимі змінюються дві речі:
- Освітлення не враховується. Колір поверхні залежить лише від її напрямку, тому немає ні тіней, ні відблисків.
- Замість кнопки освітлення з'являється кнопка Параметри нормалей. Вона теж має значок веселки й розташована одразу після режимів перегляду. Вона відкриває налаштування, описані у кроках 4 і 5.
Якщо ввімкнено Автообертання, вимкніть його. Кольори легше оцінювати, коли модель рухається лише тоді, коли її рухаєте ви.

Крок 3 — Прочитайте кольори
Колір показує, куди спрямована поверхня. Зі стандартними налаштуваннями напрямок відраховується відносно вашого екрана:
| Поверхня спрямована… | Колір |
|---|---|
| до вас | синьо-фіолетовий |
| праворуч | рожевий |
| ліворуч | синій |
| вгору | бірюзовий |
| вниз | пурпуровий |
| від вас | оливковий, темно-жовтий, помаранчевий або темно-зелений |
Поверхні з проміжним нахилом отримують проміжні кольори, тому округла форма схожа на плавну веселку.
Перевернуті грані видає останній рядок таблиці. У закритій справній моделі видно лише ті поверхні, що звернені до вас, тому вся модель намальована холодними кольорами з перших п'яти рядків. Поверхню, спрямовану від вас, ніколи не має бути видно. Оливкова, темно-жовта, помаранчева або темно-зелена ділянка — це поверхня, яку ви бачите зі зворотного боку, і в суцільній деталі це зазвичай означає перевернуту грань.
Як перевірити модель:
- Повільно обертайте її та огляньте з усіх боків, зокрема згори і знизу.
- Наблизьте дрібні деталі, отвори та місця з'єднання частин.
- Шукайте ділянки, колір яких не пасує до поверхонь навколо. Перевернута грань оливкова або темно-жовта щоразу, коли вона повернута до вас, тоді як грані навколо неї синьо-фіолетові.
Якщо оливковою і темно-жовтою є вся модель, перевернуто всі грані, тобто модель вивернута навиворіт. Таке трапляється після дзеркального відбиття деталі або масштабування з від'ємним значенням.

Коли оливковий колір не означає перевернуту грань
Оливковий колір означає «ви дивитеся на зворотний бік поверхні». У кількох випадках це очікувано:
- Діра в сітці. Крізь діру видно внутрішній бік протилежної стінки. Грані в порядку, але сама діра — проблема, яку варто виправити.
- Поверхня без товщини, наприклад необроблений 3D-скан або окремий лист. Ззаду вона оливкова. Таку модель однаково треба закрити або потовщити перед друком.
- Переріз. В Аналізі перерізу в режимі Порожній ви зазираєте всередину деталі, тому видно внутрішній бік її стінок.
- Камера всередині моделі. За дуже сильного наближення ви бачите стінки зсередини. Натисніть Підігнати, щоб повернутися назовні.
Крок 4 — Виберіть простір нормалей: Вид або Світ
Натисніть кнопку Параметри нормалей (значок веселки одразу після режимів перегляду). Панель, що відкриється, має три частини: Простір нормалей, Затінення і Легенду, яка коротко нагадує правила кольорів.

Простір нормалей визначає, відносно чого відраховується напрямок.
Вид — стандартне налаштування. Напрямок відраховується відносно екрана: праворуч, вгору і до вас. Кольори змінюються, коли ви обертаєте модель, бо поверхня, яка щойно була звернена до вас, тепер повернута вбік. Використовуйте Вид для пошуку перевернутих граней. Під будь-яким кутом поверхня, звернена до вас, синьо-фіолетова, а поверхня, яку видно ззаду, оливкова.
Світ відраховує напрямок відносно сцени, яка лишається на місці, коли ви обертаєте камеру. Кожна поверхня зберігає свій колір під будь-яким кутом:
| Поверхня спрямована… | Колір у просторі Світ |
|---|---|
| вгору | світло-зелений |
| вниз | пурпуровий |
| в один із чотирьох боків | рожевий, темно-бірюзовий, синьо-фіолетовий або оливковий |
Використовуйте Світ, коли кольори мають лишатися сталими: щоб побачити, як зорієнтована модель, знайти поверхні, спрямовані вниз (саме їм можуть знадобитися підтримки, якщо друкувати модель у такому положенні), або зробити знімки екрана, які легко порівнювати.
Простір Світ має дві особливості:
- Оливковий тут — звичайний колір. Він позначає один із чотирьох боків, а не проблему. У Світі перевернута грань має колір протилежного напрямку, наприклад пурпуровий трикутник посеред світло-зеленої верхньої поверхні.
- Верх означає верх сцени. Якщо перемкнути вісь, спрямовану вгору, кнопками Y-вгору і Z-вгору, модель повернеться у сцені, а її кольори зміняться разом із нею.

Крок 5 — Виберіть затінення: Грані або Згладжені
Затінення визначає, звідки береться напрямок кожної поверхні.
Грані — стандартне налаштування. Кожен трикутник отримує один рівний колір, а його напрямок обчислюється із самого трикутника, з порядку його вершин. Більшість слайсерів спирається на ту саму інформацію, тому це налаштування підходить для перевірки, чи модель надрукується.
Згладжені використовує нормалі, збережені разом із моделлю, ті самі, за якими режим Суцільний рахує освітлення. Якщо файл містить нормалі, переглядач бере саме їх. Якщо не містить, обчислює сам, усереднюючи сусідні трикутники, тому вигнуті поверхні зазвичай мають м'які переходи кольору без видимих меж трикутників.
Для більшості файлів STL обидва налаштування мають однаковий вигляд, бо STL зберігає рівно одну нормаль на трикутник. Тому перемикання між ними — швидкий тест:
- Картинка не змінюється. Збережені нормалі узгоджуються з геометрією. Нічого робити не треба.
- Деякі ділянки змінюють колір. У цих місцях нормалі, записані у файлі, не узгоджуються з порядком вершин. Більшість слайсерів ігнорує збережені нормалі, але деякі програми їм довіряють, тому модель варто експортувати ще раз.
- У налаштуванні Згладжені вся модель стає одного рівного кольору. Усі нормалі у файлі нульові, бо так деякі програми експортують STL. Слайсери обчислюють їх заново, тож це не шкодить, а налаштування Грані однаково показує справжні напрямки.

Порівнюйте поруч у розділеному перегляді
Розділений перегляд показує дві панелі водночас під однією спільною панеллю інструментів. Він добре поєднується з режимом Нормалі, бо на екрані можна тримати кольоровий і звичайний вигляд разом.
Натисніть кнопку Розділений перегляд на панелі інструментів. Відкриється друга панель із тією самою моделлю і тими самими налаштуваннями. Поруч з'являться дві кнопки розташування (поруч або одна під одною) і перемикач Синхронізувати перегляди.
Як працюють панелі:
- Клацніть панель, щоб зробити її активною. Панель інструментів діє на активну панель.
- Коли Синхронізувати перегляди ввімкнено, обертання і наближення однієї панелі так само рухає другу, а налаштування, змінене на панелі інструментів, застосовується до обох панелей.
- Коли Синхронізувати перегляди вимкнено, панелі незалежні.
- Кожна панель має в кутку невелику мітку з двома кнопками. Одна показує модель із цієї панелі в іншій панелі, друга закриває панель.
Суцільний поруч із Нормалями
- Натисніть Розділений перегляд.
- Вимкніть Синхронізувати перегляди.
- Клацніть панель, яку хочете змінити, і виберіть Нормалі. Друга панель залишиться в режимі Суцільний.
- Знову ввімкніть Синхронізувати перегляди.
Тепер обидві панелі обертаються разом, тож кожну ділянку дивного кольору з одного боку можна зіставити зі справжньою формою з другого. Але поки синхронізацію ввімкнено, натискання режиму перегляду знову перемкне обидві панелі.

Вид поруч зі Світом
Виконайте ті самі кроки, але ввімкніть режим Нормалі в обох панелях, а за вимкненої синхронізації виберіть в одній із них Світ. Тоді одна панель покаже, які грані перевернуті, а друга — як зорієнтована модель.
До і після виправлення
Додайте на сторінку обидва файли: початковий і виправлений. У розділеному перегляді клацніть панель, а потім клацніть файл у списку моделей, щоб показати його в цій панелі. З режимом Нормалі в обох панелях і ввімкненою синхронізацією можна обертати обидві моделі разом і перевірити, чи зникли оливкові плями.
Розділений перегляд доступний у попередньому перегляді на головній сторінці та на сторінках поширених моделей. У вбудовуваннях він недоступний, а розташування панелей не зберігається в посиланні для поширення. На вузькому екрані панелі завжди розташовані одна під одною.
Нормалі разом з іншими інструментами
Решта інструментів переглядача працює і в режимі Нормалі:
- Виміряти прив'язується до поверхні як завжди, тож можна виміряти пошкоджену ділянку.
- Аналіз перерізу розрізає забарвлену модель. У режимі Порожній видно внутрішній бік стінок.
- Моделі з кількох частин забарвлюються частина за частиною. Ви так само можете клацнути частину, щоб вибрати її, і розсунути частини повзунком Розібрана модель.
- Зберегти зображення завантажує PNG з кольорами режиму Нормалі. Це швидкий спосіб показати конструктору, де саме проблема.
- Матеріал не дає видимого ефекту, поки режим увімкнено. Вибраний матеріал буде застосовано, коли ви повернетеся до режиму Суцільний.
Поділіться моделлю в режимі Нормалі
Режим перегляду й обидва параметри зберігаються разом із моделлю під час завантаження. Якщо натиснути Завантажити, коли модель у режимі Нормалі, посилання для поширення теж відкриється в режимі Нормалі, з тим самим простором нормалей і тим самим затіненням. Зображення попереднього перегляду моделі створюється в той самий момент, тому воно теж показує кольори режиму Нормалі.
Режим можна задати і в самому посиланні, хоч би з якими налаштуваннями модель було збережено:
https://stlviewer.online/view/{shareId}?render=normals&normalSpace=world&normalShading=smooth
| Параметр | Значення | Що робить |
|---|---|---|
render | normals | Відкриває модель у режимі Нормалі. |
normalSpace | view / world | Простір нормалей. За замовчуванням view. |
normalShading | face / smooth | Затінення. За замовчуванням face. |
Ті самі параметри працюють у вбудовуванні. Додайте їх після ?embed=true:
<iframe src="https://stlviewer.online/view/{shareId}?embed=true&render=normals"
title="My 3D model" style="width:100%;height:600px;border:0;"
loading="lazy" allowfullscreen></iframe>
Повний посібник із вбудовування читайте в статті Як вбудувати 3D-модель на сайт, а опис усіх параметрів — у довіднику параметрів вбудовування.
Що робити, коли знайшли перевернуті грані
STLViewer показує проблему, але не змінює ваш файл. Щоб її виправити, скористайтеся програмою, у якій створено модель, або інструментом для ремонту сіток:
- Експортуйте модель із CAD ще раз. Перевірте, що деталь є одним закритим тілом, і уважно огляньте все, що було відбито дзеркально.
- Blender. У режимі Edit Mode виділіть усе, а потім виберіть Mesh → Normals → Recalculate Outside.
- MeshLab. Скористайтеся Filters → Normals, Curvatures and Orientation → Re-Orient all faces coherently.
- Ваш слайсер. Багато слайсерів мають команду автоматичного ремонту, яка дає раду простим випадкам.
Потім відкрийте виправлений файл у STLViewer і ще раз перевірте його в режимі Нормалі. У розділеному перегляді старий і новий файл можна поставити поруч.
Поширені запитання
Чи виправляє режим Нормалі мою модель?
Ні. Він лише показує, куди спрямована кожна поверхня. Ваш файл не змінюється. Щоб виправити перевернуті грані, експортуйте модель ще раз або скористайтеся інструментом для ремонту, як-от Blender чи MeshLab, а потім перевірте результат у режимі Нормалі.
Я бачу оливкові плями. Моя модель пошкоджена?
Не завжди. У просторі Вид оливковий колір означає, що ви дивитеся на зворотний бік поверхні. У закритій суцільній деталі це вказує на перевернуту грань. Але оливковий колір очікуваний, коли ви дивитеся крізь діру, на поверхню без товщини, всередину перерізу або коли камера всередині моделі.
Чому кольори змінюються, коли я обертаю модель?
Бо стандартний простір нормалей — Вид, у якому напрямок відраховується відносно екрана. Відкрийте Параметри нормалей і виберіть Світ, якщо хочете, щоб кожна поверхня зберігала свій колір під час обертання.
Чому Грані та Згладжені мають однаковий вигляд?
Файл STL зберігає одну нормаль на трикутник, тому у справному STL обидва налаштування дають ту саму картинку. Вони відрізняються, коли нормалі, записані у файлі, не узгоджуються з геометрією, а також у моделях 3MF або PLY зі згладженими нормалями.
Чи завантажується мій файл на сервер, коли я перевіряю нормалі?
Ні. Модель відкривається і малюється у вашому браузері. Вона потрапляє на сервер лише тоді, коли ви натискаєте Завантажити, щоб створити посилання для поширення.
