Ця сторінка ще не перекладена українською. Показано англійську версію. Переглянути англійською

Конвеєр координації моделей

Завантаження моделей різних дисциплін та підготовка їх до координаційної перевірки.

Огляд робочого процесу

Вихідні моделі
Revit ARCH
Revit STRUCT
Revit MEP
IFC Other
Завантаження RAPS
raps object upload
Сховище APS
Бакет OSS
Model Derivative
Трансляція SVF2
Результати
Metadata JSON
Viewables SVF2
Thumbnails PNG
Джерела→Завантаження→Сховище→Трансляція→Результати

Підхід CLI

Крок 1: Створення бакету проєкту

raps bucket create --key coord-project-2024 --policy persistent --region US

Крок 2: Завантаження дисциплінарних моделей

raps object upload coord-project-2024 ./models/architectural.rvt
raps object upload coord-project-2024 ./models/structural.rvt
raps object upload coord-project-2024 ./models/mep.rvt

Крок 3: Трансляція всіх моделей

for model in architectural structural mep; do
  URN=$(raps object urn coord-project-2024 "${model}.rvt" --output plain)
  echo "Translating ${model}..."
  raps translate start "$URN" --format svf2 --wait
done

Крок 4: Перевірка статусу трансляції

raps object list coord-project-2024 --output json | jq -r '.[].key' | while read key; do
  URN=$(raps object urn coord-project-2024 "$key" --output plain)
  STATUS=$(raps translate manifest "$URN" | jq -r '.status')
  echo "$key: $STATUS"
done

CI/CD-конвеєр

# .github/workflows/model-coordination.yml
name: Model Coordination Pipeline

on:
  push:
    paths:
      - 'models/**/*.rvt'
      - 'models/**/*.ifc'

env:
  BUCKET_NAME: coord-${{ github.repository_id }}

jobs:
  upload-and-translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Install RAPS
        run: cargo install raps

      - name: Ensure bucket exists
        env:
          APS_CLIENT_ID: ${{ secrets.APS_CLIENT_ID }}
          APS_CLIENT_SECRET: ${{ secrets.APS_CLIENT_SECRET }}
        run: |
          raps bucket create --key "$BUCKET_NAME" --policy persistent --region US 2>/dev/null || true

      - name: Upload changed models
        env:
          APS_CLIENT_ID: ${{ secrets.APS_CLIENT_ID }}
          APS_CLIENT_SECRET: ${{ secrets.APS_CLIENT_SECRET }}
        run: |
          for file in $(git diff --name-only HEAD~1 HEAD -- 'models/**/*.rvt' 'models/**/*.ifc'); do
            if [ -f "$file" ]; then
              echo "Uploading: $file"
              raps object upload "$BUCKET_NAME" "$file"
            fi
          done

      - name: Translate models
        env:
          APS_CLIENT_ID: ${{ secrets.APS_CLIENT_ID }}
          APS_CLIENT_SECRET: ${{ secrets.APS_CLIENT_SECRET }}
        run: |
          for file in $(git diff --name-only HEAD~1 HEAD -- 'models/**/*.rvt' 'models/**/*.ifc'); do
            if [ -f "$file" ]; then
              key=$(basename "$file")
              URN=$(raps object urn "$BUCKET_NAME" "$key" --output plain)
              raps translate start "$URN" --format svf2 --wait
              echo "Translated: $key"
            fi
          done

      - name: Generate coordination report
        env:
          APS_CLIENT_ID: ${{ secrets.APS_CLIENT_ID }}
          APS_CLIENT_SECRET: ${{ secrets.APS_CLIENT_SECRET }}
        run: |
          echo "# Coordination Report" > coordination-report.md
          echo "Generated: $(date)" >> coordination-report.md
          echo "" >> coordination-report.md
          raps object list "$BUCKET_NAME" --output json | jq -r '.[] | "- \(.key)"' >> coordination-report.md

      - name: Upload report artifact
        uses: actions/upload-artifact@v4
        with:
          name: coordination-report
          path: coordination-report.md

Потік конвеєра

Тригер
Push до models/
GitHub Actions
Checkout
Встановлення RAPS
Створення бакету
Завантаження моделей
Трансляція
Генерація звіту
Результат
coordination-report.md

Інтеграція з MCP

Використовуйте природну мову з AI-асистентами для координації моделей.

Завантаження та трансляція

User: "Upload all the Revit models from the models folder and translate them for coordination review"
Користувач
AI-асистент
RAPS MCP
Хмара APS
Завантажити моделі для координації
→
aps_bucket_create()
→
Створити бакет
→
Для кожної моделі:
aps_object_upload()
→
Завантажити файл
→
aps_translate_start()
→
Запустити трансляцію
→
←
Усі 3 моделі завантажено та транслюються

Перевірка статусу трансляції

User: "Check if all the models in the coordination bucket have been translated successfully"

Відповідь AI:

Усі 3 моделі успішно транслятовано:

  • arch.rvt: Завершено
  • struct.rvt: Завершено
  • mep.rvt: Завершено

Пов’язане