-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
84 lines (78 loc) · 3.78 KB
/
Copy pathindex.html
File metadata and controls
84 lines (78 loc) · 3.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<title>Hikka Anime Title Map</title>
<link rel="stylesheet" href="style.css">
<script type="importmap">
{
"imports": {
"three": "https://cdn.jsdelivr.net/npm/three@0.164.1/build/three.module.js",
"three/addons/": "https://cdn.jsdelivr.net/npm/three@0.164.1/examples/jsm/"
}
}
</script>
</head>
<body>
<div class="map-container">
<div class="map" id="map">
<div class="axis-x"></div>
<div class="axis-y"></div>
<!-- Points will be added here by JavaScript -->
</div>
<div class="canvas-container hidden" id="canvas-container"></div>
<div class="loading" id="loading"></div>
<div class="point-loading" id="point-loading"></div>
</div>
<div class="tooltip" id="tooltip">
<div class="tooltip-content" id="tooltip-content">
<!-- Anime info will be added here by JavaScript -->
</div>
</div>
<div class="search-container" id="search-container">
<input type="text" class="search-input" id="search-input" placeholder="Search anime..." autocomplete="off">
<div class="search-results" id="search-results"></div>
</div>
<div class="controls">
<button class="control-btn mode-toggle" id="mode-toggle" title="Switch between 2D and 3D view">
<span class="mode-label" id="mode-label">3D</span>
</button>
<button class="control-btn" id="zoom-in">+</button>
<button class="control-btn" id="zoom-out">-</button>
<button class="control-btn" id="reset">⟲</button>
</div>
<div class="cluster-filter-container" id="cluster-filter-container">
<button class="control-btn cluster-toggle" id="cluster-toggle" title="Filter by cluster">
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="4" height="4" rx="1" fill="currentColor" opacity="0.9"/>
<rect x="6" y="1" width="4" height="4" rx="1" fill="currentColor" opacity="0.6"/>
<rect x="11" y="1" width="4" height="4" rx="1" fill="currentColor" opacity="0.3"/>
<rect x="1" y="6" width="4" height="4" rx="1" fill="currentColor" opacity="0.5"/>
<rect x="6" y="6" width="4" height="4" rx="1" fill="currentColor" opacity="0.9"/>
<rect x="11" y="6" width="4" height="4" rx="1" fill="currentColor" opacity="0.4"/>
<rect x="1" y="11" width="4" height="4" rx="1" fill="currentColor" opacity="0.3"/>
<rect x="6" y="11" width="4" height="4" rx="1" fill="currentColor" opacity="0.7"/>
<rect x="11" y="11" width="4" height="4" rx="1" fill="currentColor" opacity="0.9"/>
</svg>
</button>
<div class="cluster-panel" id="cluster-panel">
<div class="cluster-panel-header">
<input type="text" class="cluster-search" id="cluster-search" placeholder="Search cluster...">
<div class="cluster-panel-actions">
<button class="cluster-action-btn" id="cluster-select-all">All</button>
<button class="cluster-action-btn" id="cluster-select-none">None</button>
</div>
</div>
<div class="cluster-grid" id="cluster-grid"></div>
<div class="cluster-panel-footer">
<span id="cluster-count">0 / 0 clusters</span>
</div>
</div>
</div>
<div class="map-info" id="map-info">
X: 0 Y: 0 Scale: 1.0
</div>
<script type="module" src="js/main.js"></script>
</body>
</html>