Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
W
web3dscans1
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 17
    • Issues 17
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Web3DScans
  • web3dscans1
  • Wiki
  • CrossReferencer

Last edited by Benno Schmidt Aug 27, 2023
Page history
This is an old version of this page. You can view the most recent version or browse the history.

CrossReferencer

Idee:

Bei Klick auf ein Kartensymbol, das den Fundort einer Probe repräsentiert, muss der passende Steckbrief und das passende 3DModell geladen werden. Schaffe also eine Verbindung zwischen der Kartenposition/Symbol, dem Steckbrief und dem 3DModell einer Probe.

Umsetzung:

Die Kartenposition wird durch die repräsentiert, welche in dem Shape-File enthalten ist, das die Kartenposition enthält; der Steckbrief und das 3DModell jeweils durch ihre Dateinamen. Die Verbindung dieser Informationen wird in dem JSON-Dokument CrossReferencer.json gespeichert, welches folgende Struktur aufweißt:

Struktur: { "items":[{"probe":"Proben-ID", "steckbrief":"Name der Steckbrief-Datei", "scan3d":"Name der Handstück-Datei"}, ... ] }

Dabei müssen alle Werte - also , , <Name der Handstück-Datei> - als Strings, ohne File-Extension, in doppelten Hochkommata eingetragen werden. Bemerkung: die "Proben-ID" in dem Shape-File kann auch Buchstaben enthalten (!)

Beispiel: { "items":[{"probe":"921","steckbrief":"steckbrief","scan3d":"Handstueck_CS3_3D"}, {"probe":"5761","steckbrief":"steckbrief2","scan3d":"Astronaut"}, {"probe":"38094","steckbrief":"steckbrief","scan3d":"Handstueck_CS3_3D_old"} ] }

In dem JavaScript-File CrossReferencer.js sind die benötigten Funktionalitäten wie folgt abgelegt, die alle Teil der dort definierten Klasse CrossReferencer sind:

Name der Funktion Wirkung der Funktion
readJSONFile("rel. Pfad") JSON-File als JavScript-Object einlesen; "rel. Pfad" = der relative Pfad zum JSON-File bezogen auf Hauptverzeichnis; derzeit einfach nur Dateiname XReferencer.json, da in Hauptverzeichnis; Hinweis: das eingeladene JavaScript-Object wird als static Variable "crossRefJSON" der Klasse CrossReferencer abgespeichert, kann also mit "this.xRefJSON" verwendet werden.
getAllByProbe("Probe-ID") Hole aus eingeladenem JSON-File CrossReferencer.json alle Einträge, deren Feld "probe" den Wert "Probe-ID" hat und gebe diese als Array von JavaScipt-Objecten zurück; WICHTIG: in darauf aufbauenden Funktionen wird davon ausgegangen, dass genau ein JavaScript-Object gefunden wurde! Die Probe-ID sollte also eindeutig in dem JSON-File sein!
scan3d("Probe-ID") Nutzt docPathScan3d und getAllByProbe, um für "Probe-ID" Dokumentpfad zum passenden 3DModell zurückzugeben; wenn getAllByProbe leeres Array ergibt, wird Default-Pfad zurückgegeben
docPathScan3d("Modelname") Erstellt Dokumentpfad zum 3dModell "Modelname"
steckbrief("Probe-ID") wie scan3d nur für Steckbrief
docPath() wie docPathScan3d nur für Steckbrief
Clone repository
  • 3.3 3D Viewer
  • 3D Darstellungsparameter
  • 3D Formate
  • 3D Viewer Komponente
  • 3D Viewer
  • Anzeigefenster
  • Arbeitsumgebung
  • Aufgabenbeschreibung
  • BOM
  • Bohrprofil Anzeige
  • CrossReferencer
  • Desktop und mobile Version
  • Endbericht
  • Generierung der 3D Modelle
  • Geodatengrundlage beim HLNUG
View All Pages