---
title: "Sprawdzanie, edycja i weryfikacja plików .x3d"
date: "2020-08-21"
categories: 
  - "applications"
  - "json"
  - "xml"
  - "xsl"
tags: 
  - "industry-standards"
  - "json-editor"
  - "x3d"
  - "xml-editor"
  - "xslt"
description: Zapoznaj się z formatem plików .x3d, jego zastosowaniami w modelowaniu 3D oraz poznaj metody analizy, edycji i weryfikacji tych plików przy użyciu narzędzi i technik XMLSpy.
---
Status: #blog

Tags:  #industry-standards #json-editor #x3d #xml-editor #xslt

Categories: [development](/blog/pl/category/development.md) | [json](/blog/pl/category/json.md) | [xml](/blog/pl/category/xml.md) | [xsl](/blog/pl/category/xsl.md)
# Sprawdzanie, edycja i weryfikacja plików .x3d

Format plików .x3d to standard ISO/IEC oparty na XML, służący do reprezentowania obrazów 3D. Pliki .x3d, znane również jako X3D, powstały jako sposób na przedstawianie obrazów 3D w grafice komputerowej. Z czasem zastosowania tego formatu rozwinęły się od wirtualnej rzeczywistości (VRML) do projektowania CAD, wizualizacji architektonicznych, druku 3D, obrazowania medycznego i anatomicznego, reprezentacji struktur chemicznych na poziomie molekularnym, animacji postaci ludzkich i wielu innych.

Konsorcjum [Web3D](https://www.web3d.org/x3d/what-x3d/) utrzymuje standard X3D, a schematy XML są udokumentowane [tutaj](http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3.html). Aktualne wersje zawierają definicje ponad 250 elementów XML, ponad 100 prostych typów danych, 70 złożonych typów danych oraz ponad 40 zdefiniowanych grup węzłów.

Aby dokładnie opisać coś, od precyzyjnie wykonanego elementu maszyny po bogato szczegółowe środowisko wirtualne, potrzebna jest duża złożoność, zwłaszcza jeśli chodzi o oświetlenie, tekstury i punkt widzenia! XMLSpy, najpopularniejsze na świecie narzędzie do [modelowania, edycji, transformacji i debugowania](https://www.altova.com/pl/xmlspy-xml-editor) technologii związanych z XML i JSON, obsługuje pliki .x3d. XMLSpy oferuje narzędzia zgodne ze standardami dla każdego, kto może potrzebować przeglądać, wymieniać, przetwarzać lub weryfikować pliki .x3d. Przyjrzyjmy się kilku przykładom.

![](/blog/images/draft_x3d_01.png)

<!--more-->

Po pierwsze, możemy dostosować menu narzędzi XMLSpy, aby utworzyć nową opcję menu, która umożliwia wygodne wyświetlanie obrazów 3D z plików .x3d. Zainstalowaliśmy dwa odtwarzacze X3D, które znajdują się na stronie [Zasoby X3D](https://www.web3d.org/x3d/content/examples/X3dResources.html) na stronie web3d.org, abyśmy mogli porównać wyniki w każdym z nich. Dzięki temu tworzymy tutaj opcje menu zdefiniowane przez użytkownika:

[![](/blog/images/tools-menu-1a-1.png)](tools-menu-1a-1.png)

Teraz potrzebujemy pliku .x3d. Wiele przykładów jest dostępnych online. Krajowy Instytut Zdrowia (NIH) prowadzi [bibliotekę plików .x3d](https://3dprint.nih.gov/) na swojej stronie internetowej. Te pliki zawierają różnorodne zastosowania X3D, w tym modele struktur chemicznych, obiekty do druku 3D oraz realistyczne wizualizacje tkanek komórkowych i organizmów.

Zacznijmy od kształtu, który można wydrukować w technologii 3D. Na poniższym zrzucie ekranu widzimy, jak otworzyliśmy plik i, korzystając z menu Narzędzia, otworzyliśmy go również w aplikacji H3DViewer:

[![Program XMLSpy automatycznie weryfikuje pliki .x3d po ich otwarciu](/blog/images/Capture-earsaver-1.png)](Capture-earsaver-1.png)

Zwróć uwagę na okno z komunikatami, znajdujące się poniżej głównego obszaru wyświetlania tekstu. Program XMLSpy automatycznie weryfikuje pliki .x3d po ich otwarciu. W przeglądarce H3D można chwycić obraz i obracać go, aby lepiej go zobaczyć

[![](/blog/images/Capture-earsaver-2-1.png)](Capture-earsaver-2-1.png)

Ten przedmiot to osłona na uszy, przeznaczona do stosowania z maskami ochronnymi i drukowana w drukarce 3D. Jej celem jest zapobieganie podrażnieniom skóry za uszami u osób noszących maski.

Jak mogliśmy zauważyć na pierwszym zrzucie ekranu, większość pliku zawiera definicje współrzędnych, rozpoczynające się od linii 14. Jeśli chcielibyśmy edytować ten plik, na przykład, aby zmienić kolor obiektu, moglibyśmy przełączyć się do widoku edytora siatki XMLSpy. Widok edytora siatki pokazuje hierarchiczną strukturę dokumentów XML i DTD za pomocą zestawu zagnieżdżonych kontenerów, które można łatwo rozwinąć i zwinąć. Pozostawimy kontener zawierający wszystkie współrzędne kształtów zwinięty, aby skupić się na innych elementach dokumentu i uniknąć przypadkowej zmiany wartości kształtów.

Poniższy zrzut ekranu pokazuje, co się dzieje w edytorze siatki, gdy dwukrotnie klikniemy element "Kształt":

[![](/blog/images/Capture-earsaver-2a.png)](Capture-earsaver-2a.png)

XMLSpy otwiera okno dialogowe z pomocą dotyczącą wprowadzania danych, które wyświetla wszystkie inne elementy zdefiniowane w schemacie, które są prawidłowymi elementami potomnymi elementu "Group" w danym miejscu w pliku. Ta informacja może być przydatna, jeśli masz za zadanie stworzyć lub zmodyfikować prototypowy plik .x3d dla środowiska CAD lub scenę w grze immersyjnej z perspektywy pierwszej osoby.

Zmieńmy kolor obiektu zdefiniowanego w tym pliku. Kiedy klikniemy, aby edytować wartości atrybutu "diffuseColor" elementu "Material", program XMLSpy oferuje wartość domyślną, opartą na schemacie XML. Możemy zaakceptować wartość domyślną lub wpisać nową.

[![Edycja pliku .x3d w widoku tabelarycznym XMLSpy](/blog/images/Capture-earsaver-3-1.png)](Capture-earsaver-3-1.png)

XMLSpy oferuje opcję weryfikacji plików .x3d podczas edycji. Jeśli wpiszemy "3 3 3" i spróbujemy zapisać plik, XMLSpy natychmiast wykryje błąd:

[![Weryfikacja plików .x3d z wyświetlaniem szczegółowych komunikatów o błędach](/blog/images/Capture-earsaver-4.png)](Capture-earsaver-4.png)

Wartości tego atrybutu muszą być mniejsze niż 1. Możemy wprowadzić wartości 0.3, 0.2 i 0.1, a następnie ponownie załadować obraz w programie H3D Viewer:

[![](/blog/images/Capture-earsaver-5-1.png)](Capture-earsaver-5-1.png)

Obiekt ten ma teraz kolor brązowy, zamiast niebieskiego.

Inne pliki dostępne na stronie NIH oraz w innych źródłach prezentują różne zastosowania X3D. Poniżej znajduje się model chemiczny leku remdesiwir, który może być potencjalnym lekiem na Ebola i COVID-19. Ten kształt jest zdefiniowany w zupełnie inny sposób niż model osłony na uszy:

[![Plik .x3d opisujący strukturę chemiczną leku remdesiwiru](/blog/images/Capture-remdesivir.png)](Capture-remdesivir.png)

Jeśli jesteście wystarczająco odważni, możecie nawet zmierzyć się z wrogiem całej ludzkości:

[![](/blog/images/Capture-covid-19.png)](Capture-covid-19.png)

### Konwersja formatu .x3d do formatu JSON

Konsorcjum Web3D jest bliskie ukończenia standardu przechowywania formatu X3D w formacie JSON i udostępniło arkusz stylów XSL, który umożliwia [konwersję plików .x3d do formatu JSON](https://www.web3d.org/x3d/stylesheets/X3dToJson.html). Program XMLSpy zawiera bardzo szybki procesor XSLT 3.0 firmy RaptorXML, który można wykorzystać z arkuszem stylów XSL firmy Web3D, aby przetestować konwersję plików.

Po pierwsze, możemy zmienić domyślne rozszerzenie plików w oknie opcji XMLSpy, w sekcji dotyczącej przetwarzania XSLT:

[![Okno dialogowe "Opcje" w programie XMLSpy, dotyczące przetwarzania XSL](/blog/images/Capture-XSL-options.png)](Capture-XSL-options.png)

Wyłączyliśmy również opcję "Weryfikacja plików XML", ponieważ stale przeprowadzamy weryfikację podczas edycji.

Następnie, po otwarciu pliku .x3d, naciśnij klawisz F10 lub wybierz opcję "Transformacja XSL" w menu "XSL/XQuery".

Transformacja przebiega, a wynikowy plik JSON otwiera się w nowym oknie. Poniższy obrazek przedstawia dokument JSON wygenerowany na podstawie danych dotyczących osłony na twarz z oszczędzaczem na uszy (NIH), wyświetlany w widoku tekstowym XMLSpy oraz w widoku edytora siatki JSON:

[![](/blog/images/json-output.png)](json-output.png)

Jeśli potrzebujesz przeglądać, edytować lub weryfikować pliki .x3d, zapoznaj się ze stroną zawierającą [przykłady XMLSpy](https://www.altova.com/pl/xmlspy-xml-editor/demos), gdzie znajdziesz więcej filmów instruktażowych i szczegółowych porad dotyczących edytora siatki oraz wielu innych funkcji XMLSpy. Kiedy będziesz gotowy, aby zanurzyć się w środowisku 3D zdefiniowanym przez plik .x3d, pobierz bezpłatną, [30-dniową wersję próbną](https://www.altova.com/pl/xmlspy-xml-editor/download) XMLSpy.
