demo-visite-virtuelle / .history /index_20241119000624.html
Natha1627
Initial commit
3b6bb5e
raw
history blame
7.67 kB
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Personnalisation</title>
<link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css">
<link href="/dist/tailwind.css" rel="stylesheet">
</head>
<body class="bg-bg text-textDark font-sans">
<div id="dashboard-layout" class="flex flex-col h-screen">
<div id="content" class="flex flex-col flex-1 p-6">
<!-- Error Message -->
<div id="error" class="hidden text-red-600"></div>
<!-- Viewspace Container -->
<div id="viewspacecontainer" class="bg-white p-6 rounded-lg shadow-md">
<div class="view aspect-w-16 aspect-h-9 rounded-xl border border-yellow-300 bg-gray-100 flex items-center justify-center">
<!-- Loading Animation -->
<div id="Loading" class="absolute">
<h4 class="text-lg font-bold text-gray-700">
<span id="image-progress">Loading images: 0/?</span>
</h4>
</div>
<!-- Benchmark Stats -->
<textarea readonly id="benchmark-stats" rows="10" cols="40"
class="absolute top-4 left-4 border rounded p-2 text-gray-600 bg-white shadow">
Click me to start benchmarking when the frame-rate is behaving reasonably.
</textarea>
<!-- Loading Indicators -->
<div id="loading-container" class="absolute flex space-x-4">
<div id="topleft" class="loading-bgbox w-8 h-8 bg-gray-300 rounded-full"></div>
<div id="bottomleft" class="loading-bgbox w-8 h-8 bg-gray-300 rounded-full"></div>
<div id="topright" class="loading-bgbox w-8 h-8 bg-gray-300 rounded-full"></div>
<div id="bottomright" class="loading-bgbox w-8 h-8 bg-gray-300 rounded-full"></div>
<div id="loading-indicator" class="w-8 h-8 bg-gray-500 rounded-full animate-spin"></div>
</div>
<!-- Viewer Canvas -->
<canvas id="viewerCanvas" class="w-full h-full rounded-xl"></canvas>
</div>
</div>
<!-- Toolbar -->
<div id="toolbar" class="flex flex-wrap items-center mt-6 space-x-4">
<button id="addSphereButton" class="bg-blue-600 text-white px-4 py-2 rounded">Ajouter une pièce</button>
<button id="toggleGizmoButton" class="bg-gray-300 text-black px-4 py-2 rounded">Guizmo inactif</button>
<button id="togglePlanButton" class="bg-green-600 text-white px-4 py-2 rounded">Plan visible</button>
<button id="toggleNewPlaneGizmoButton" class="bg-gray-300 text-black px-4 py-2 rounded">Gizmo Plan2 Inactif</button>
<button id="createNewPlaneButton" class="bg-blue-600 text-white px-4 py-2 rounded">Créer un Nouveau Plan</button>
<button id="verifyButton" class="bg-yellow-500 text-white px-4 py-2 rounded">Vérifier</button>
<button id="boundingBoxButton" class="bg-purple-500 text-white px-4 py-2 rounded">Créer la bounding box</button>
<input type="text" id="folderPathInput" placeholder="Nom du dossier"
class="border rounded px-4 py-2 focus:outline-none">
<button id="uploadButton" class="bg-gray-400 text-white px-4 py-2 rounded" disabled>Téléverser vers GCS</button>
</div>
<!-- Video Maker Bar -->
<div id="videoMakerBar" class="flex flex-wrap items-center mt-6 space-x-4">
<button id="saveCameraPosition" class="bg-green-600 text-white px-4 py-2 rounded">Enregistrer Position Caméra</button>
<button id="stopAnimationButton" class="bg-red-600 text-white px-4 py-2 rounded">Arrêter l'Animation</button>
<button id="startAnimationButton" class="bg-blue-600 text-white px-4 py-2 rounded">Démarrer Animation Caméra</button>
<button id="captureButton" class="bg-purple-500 text-white px-4 py-2 rounded">Capturer Vidéo</button>
</div>
<!-- Status Message -->
<div id="statusMessage" class="status-message mt-4 text-gray-700"></div>
<!-- Figure Cards Container -->
<div id="figureCardsContainer" class="grid grid-cols-3 gap-4 mt-6">
<!-- Dynamic content will be added here -->
</div>
</div>
</div>
<!-- Charger dynamiquement les scripts avec logs -->
<script src="/js/layout.js"></script>
<script src="/js/sidebar.js"></script>
<script src="/js/topbar.js"></script>
<script>
const scriptsToLoad = [
'https://unpkg.com/three@0.113.1/build/three.js',
'https://unpkg.com/three@0.113.1/examples/js/controls/OrbitControls.js',
'https://unpkg.com/three@0.113.1/examples/js/controls/PointerLockControls.js',
'https://unpkg.com/three@0.113.1/examples/js/controls/TransformControls.js',
'https://unpkg.com/stats-js@1.0.1/build/stats.min.js',
'https://cdn.jsdelivr.net/npm/ccapture.js@1.0.9/build/CCapture.all.min.js',
'https://unpkg.com/file-saver@2.0.0-rc.2/dist/FileSaver.min.js',
'/dashboard/personnalisation/deps/zlib.js',
'/dashboard/personnalisation/deps/png.js',
'/dashboard/personnalisation/scene_spec.js',
'/dashboard/personnalisation/fetch_asset.js',
'/dashboard/personnalisation/create_texture.js',
'/dashboard/personnalisation/prepare_payload.js',
'/dashboard/personnalisation/populate_texture.js',
'/dashboard/personnalisation/texture_manager.js',
'/dashboard/personnalisation/worker_pool.js',
'/dashboard/personnalisation/globals.js',
'/dashboard/personnalisation/utils.js',
'/dashboard/personnalisation/progressive.js',
'/dashboard/personnalisation/viewdependency.js',
'/dashboard/personnalisation/defaultposes.js',
'/dashboard/personnalisation/input.js',
'/dashboard/personnalisation/benchmark.js',
'/dashboard/personnalisation/custom/objects.js',
'/dashboard/personnalisation/custom/boutons_sb.js',
'/dashboard/personnalisation/custom/mouseHover.js',
'/dashboard/personnalisation/custom/addSphereOnClick.js',
'/dashboard/personnalisation/custom/selectFigure.js',
'/dashboard/personnalisation/custom/extrude.js',
'/dashboard/personnalisation/local_script.js',
'/dashboard/personnalisation/videoMaker/cameraCapture.js',
'/dashboard/personnalisation/index.js'
];
async function loadScriptsInOrder(scripts) {
for (const script of scripts) {
await new Promise((resolve, reject) => {
const scriptEl = document.createElement('script');
scriptEl.src = script;
scriptEl.onload = resolve;
scriptEl.onerror = reject;
document.body.appendChild(scriptEl);
});
}
}
loadScriptsInOrder(scriptsToLoad);
</script>
</body>
</html>