Zum Hauptinhalt springen

CAD / BIM / synthetische Assets

Wandeln Sie architektonische oder synthetische Assets in AR-Clip-VPS-Karten um — für Bauprojekte, Innenraumnavigation oder Szenarien mit digitalen Zwillingen.

Geometrie vorbereiten

  1. Importieren Sie das CAD-/BIM-Modell in Blender, Unity oder ein ähnliches Werkzeug.
  2. Lösen Sie instanzierte Objekte auf und entfernen Sie verborgene oder irrelevante Geometrie.
  3. Reduzieren Sie die Polygonzahl, ohne die wesentlichen Merkmale zu verlieren (Ziel: ≤5 Millionen Dreiecke).
  4. Erzeugen Sie UVs und backen Sie leichte Texturen, wenn Sie das Modell vorschauen wollen.

Anker planen

[
{ "name": "lobby", "position": [0.0, 0.0, 0.0] },
{ "name": "elevator_north", "position": [12.4, 0.0, 28.9] }
]
  • Koordinaten stehen in Metern, relativ zum Ursprung des Modells.
  • Nehmen Sie stabile Bezeichner (lobby, loading_dock), damit SDK-Code sie direkt nutzen kann.

Upload mit der Python-REST-API

# upload_cad.py
from pathlib import Path
import json
import os
import requests

API_BASE = "https://api.arclip.app/vps/api/v3"
TOKEN = os.environ["ARCLIP_TOKEN"]
MODEL = Path("exports/mall.glb")
ANCHORS = Path("exports/anchors.json")

headers = {"Authorization": f"Bearer {TOKEN}"}

payload = {
"name": "Mall Digital Twin",
"dataType": "mesh",
"sourceFormat": "glb",
"anchors": json.loads(ANCHORS.read_text()),
"publish": False
}

init = requests.post(f"{API_BASE}/maps/import", json=payload, headers=headers)
init.raise_for_status()
info = init.json()
map_id, upload_url = info["mapId"], info["uploadUrl"]

with MODEL.open("rb") as src:
put = requests.put(upload_url, data=src, headers={"Content-Type": "model/gltf-binary"})
put.raise_for_status()

finalize = requests.post(f"{API_BASE}/maps/{map_id}/finalize", json={}, headers=headers)
finalize.raise_for_status()
print(f"CAD map {map_id} queued → {finalize.json()['status']}")
  • Anker können in der ersten Nutzlast mitgeschickt werden; alternativ rufen Sie danach POST /maps/{id}/anchors auf.
  • Hängen Sie coordinate an, wenn das Modell georeferenziert ist ({"lat": ..., "lon": ..., "alt": ...}).

Prüfung

  • Sehen Sie sich die Karte in arclip.design an und justieren Sie bei Bedarf die Ankerversätze.
  • Testen Sie die Lokalisierung mit dem Unity SDK; richten Sie virtuelle Objekte über dieselben Anker-Ids aus.
  • Ändert sich das CAD-Modell, führen Sie den Import erneut aus. Die mapId bleibt stabil, wenn Sie POST /maps/{id}/update aufrufen, statt eine neue Karte anzulegen.