cesium-to-three 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (184) hide show
  1. package/README.md +226 -0
  2. package/dist/arrow.js +523 -0
  3. package/dist/arrow.js.map +1 -0
  4. package/dist/ground.js +34 -0
  5. package/dist/ground.js.map +1 -0
  6. package/dist/index.js +34 -0
  7. package/dist/index.js.map +1 -0
  8. package/dist/text-primitive-Ci0sbuh1.js +60066 -0
  9. package/dist/text-primitive-Ci0sbuh1.js.map +1 -0
  10. package/dist/types/cesium-three-ground.d.ts +2 -0
  11. package/dist/types/cesium-three-ground.d.ts.map +1 -0
  12. package/dist/types/lib/arrow/arrow-curves.d.ts +73 -0
  13. package/dist/types/lib/arrow/arrow-curves.d.ts.map +1 -0
  14. package/dist/types/lib/arrow/arrow-geometry.d.ts +140 -0
  15. package/dist/types/lib/arrow/arrow-geometry.d.ts.map +1 -0
  16. package/dist/types/lib/arrow/arrow-polygon.d.ts +87 -0
  17. package/dist/types/lib/arrow/arrow-polygon.d.ts.map +1 -0
  18. package/dist/types/lib/arrow/arrow-types.d.ts +152 -0
  19. package/dist/types/lib/arrow/arrow-types.d.ts.map +1 -0
  20. package/dist/types/lib/arrow/index.d.ts +8 -0
  21. package/dist/types/lib/arrow/index.d.ts.map +1 -0
  22. package/dist/types/lib/arrow/shapes/assault-direction-arrow.d.ts +20 -0
  23. package/dist/types/lib/arrow/shapes/assault-direction-arrow.d.ts.map +1 -0
  24. package/dist/types/lib/arrow/shapes/attack-arrow.d.ts +56 -0
  25. package/dist/types/lib/arrow/shapes/attack-arrow.d.ts.map +1 -0
  26. package/dist/types/lib/arrow/shapes/curved-arrow.d.ts +10 -0
  27. package/dist/types/lib/arrow/shapes/curved-arrow.d.ts.map +1 -0
  28. package/dist/types/lib/arrow/shapes/fine-arrow.d.ts +23 -0
  29. package/dist/types/lib/arrow/shapes/fine-arrow.d.ts.map +1 -0
  30. package/dist/types/lib/arrow/shapes/swallowtail-attack-arrow.d.ts +12 -0
  31. package/dist/types/lib/arrow/shapes/swallowtail-attack-arrow.d.ts.map +1 -0
  32. package/dist/types/lib/ground/cesium-ground-adapter.d.ts +9 -0
  33. package/dist/types/lib/ground/cesium-ground-adapter.d.ts.map +1 -0
  34. package/dist/types/lib/ground/circle/circle-construct-extruded.d.ts +62 -0
  35. package/dist/types/lib/ground/circle/circle-construct-extruded.d.ts.map +1 -0
  36. package/dist/types/lib/ground/circle/circle-extents.d.ts +23 -0
  37. package/dist/types/lib/ground/circle/circle-extents.d.ts.map +1 -0
  38. package/dist/types/lib/ground/circle/circle-options.d.ts +59 -0
  39. package/dist/types/lib/ground/circle/circle-options.d.ts.map +1 -0
  40. package/dist/types/lib/ground/circle/circle-positions.d.ts +56 -0
  41. package/dist/types/lib/ground/circle/circle-positions.d.ts.map +1 -0
  42. package/dist/types/lib/ground/circle/circle-shadow-volume.d.ts +24 -0
  43. package/dist/types/lib/ground/circle/circle-shadow-volume.d.ts.map +1 -0
  44. package/dist/types/lib/ground/circle/circle-top-bottom.d.ts +70 -0
  45. package/dist/types/lib/ground/circle/circle-top-bottom.d.ts.map +1 -0
  46. package/dist/types/lib/ground/circle/circle-top-indices.d.ts +28 -0
  47. package/dist/types/lib/ground/circle/circle-top-indices.d.ts.map +1 -0
  48. package/dist/types/lib/ground/circle/circle-wall-construction.d.ts +75 -0
  49. package/dist/types/lib/ground/circle/circle-wall-construction.d.ts.map +1 -0
  50. package/dist/types/lib/ground/classification.d.ts +124 -0
  51. package/dist/types/lib/ground/classification.d.ts.map +1 -0
  52. package/dist/types/lib/ground/constants.d.ts +26 -0
  53. package/dist/types/lib/ground/constants.d.ts.map +1 -0
  54. package/dist/types/lib/ground/depth.d.ts +63 -0
  55. package/dist/types/lib/ground/depth.d.ts.map +1 -0
  56. package/dist/types/lib/ground/geometry.d.ts +12 -0
  57. package/dist/types/lib/ground/geometry.d.ts.map +1 -0
  58. package/dist/types/lib/ground/index.d.ts +6 -0
  59. package/dist/types/lib/ground/index.d.ts.map +1 -0
  60. package/dist/types/lib/ground/line/line-arrowhead.d.ts +67 -0
  61. package/dist/types/lib/ground/line/line-arrowhead.d.ts.map +1 -0
  62. package/dist/types/lib/ground/line/line-densify.d.ts +35 -0
  63. package/dist/types/lib/ground/line/line-densify.d.ts.map +1 -0
  64. package/dist/types/lib/ground/line/line-geometry-normals.d.ts +49 -0
  65. package/dist/types/lib/ground/line/line-geometry-normals.d.ts.map +1 -0
  66. package/dist/types/lib/ground/line/line-options.d.ts +54 -0
  67. package/dist/types/lib/ground/line/line-options.d.ts.map +1 -0
  68. package/dist/types/lib/ground/line/line-preprocess.d.ts +12 -0
  69. package/dist/types/lib/ground/line/line-preprocess.d.ts.map +1 -0
  70. package/dist/types/lib/ground/line/line-segment-attributes.d.ts +24 -0
  71. package/dist/types/lib/ground/line/line-segment-attributes.d.ts.map +1 -0
  72. package/dist/types/lib/ground/line/line-shadow-volume.d.ts +25 -0
  73. package/dist/types/lib/ground/line/line-shadow-volume.d.ts.map +1 -0
  74. package/dist/types/lib/ground/line/line-types.d.ts +74 -0
  75. package/dist/types/lib/ground/line/line-types.d.ts.map +1 -0
  76. package/dist/types/lib/ground/materials.d.ts +69 -0
  77. package/dist/types/lib/ground/materials.d.ts.map +1 -0
  78. package/dist/types/lib/ground/math/cartographic.d.ts +27 -0
  79. package/dist/types/lib/ground/math/cartographic.d.ts.map +1 -0
  80. package/dist/types/lib/ground/math/constants.d.ts +20 -0
  81. package/dist/types/lib/ground/math/constants.d.ts.map +1 -0
  82. package/dist/types/lib/ground/math/ellipsoid-geodesic.d.ts +93 -0
  83. package/dist/types/lib/ground/math/ellipsoid-geodesic.d.ts.map +1 -0
  84. package/dist/types/lib/ground/math/ellipsoid-rhumb-line.d.ts +45 -0
  85. package/dist/types/lib/ground/math/ellipsoid-rhumb-line.d.ts.map +1 -0
  86. package/dist/types/lib/ground/math/ellipsoid.d.ts +94 -0
  87. package/dist/types/lib/ground/math/ellipsoid.d.ts.map +1 -0
  88. package/dist/types/lib/ground/math/enu-frame.d.ts +27 -0
  89. package/dist/types/lib/ground/math/enu-frame.d.ts.map +1 -0
  90. package/dist/types/lib/ground/math/matrix4-helpers.d.ts +20 -0
  91. package/dist/types/lib/ground/math/matrix4-helpers.d.ts.map +1 -0
  92. package/dist/types/lib/ground/math/rte-encoding.d.ts +51 -0
  93. package/dist/types/lib/ground/math/rte-encoding.d.ts.map +1 -0
  94. package/dist/types/lib/ground/math/vec3-helpers.d.ts +50 -0
  95. package/dist/types/lib/ground/math/vec3-helpers.d.ts.map +1 -0
  96. package/dist/types/lib/ground/math/wgs84-helpers.d.ts +22 -0
  97. package/dist/types/lib/ground/math/wgs84-helpers.d.ts.map +1 -0
  98. package/dist/types/lib/ground/polygon/ellipsoid-tangent-plane.d.ts +71 -0
  99. package/dist/types/lib/ground/polygon/ellipsoid-tangent-plane.d.ts.map +1 -0
  100. package/dist/types/lib/ground/polygon/polygon-cap-construction.d.ts +59 -0
  101. package/dist/types/lib/ground/polygon/polygon-cap-construction.d.ts.map +1 -0
  102. package/dist/types/lib/ground/polygon/polygon-construct-extruded.d.ts +44 -0
  103. package/dist/types/lib/ground/polygon/polygon-construct-extruded.d.ts.map +1 -0
  104. package/dist/types/lib/ground/polygon/polygon-extents.d.ts +24 -0
  105. package/dist/types/lib/ground/polygon/polygon-extents.d.ts.map +1 -0
  106. package/dist/types/lib/ground/polygon/polygon-helpers.d.ts +76 -0
  107. package/dist/types/lib/ground/polygon/polygon-helpers.d.ts.map +1 -0
  108. package/dist/types/lib/ground/polygon/polygon-hierarchy.d.ts +60 -0
  109. package/dist/types/lib/ground/polygon/polygon-hierarchy.d.ts.map +1 -0
  110. package/dist/types/lib/ground/polygon/polygon-offset.d.ts +15 -0
  111. package/dist/types/lib/ground/polygon/polygon-offset.d.ts.map +1 -0
  112. package/dist/types/lib/ground/polygon/polygon-options.d.ts +41 -0
  113. package/dist/types/lib/ground/polygon/polygon-options.d.ts.map +1 -0
  114. package/dist/types/lib/ground/polygon/polygon-rectangle.d.ts +30 -0
  115. package/dist/types/lib/ground/polygon/polygon-rectangle.d.ts.map +1 -0
  116. package/dist/types/lib/ground/polygon/polygon-rings.d.ts +64 -0
  117. package/dist/types/lib/ground/polygon/polygon-rings.d.ts.map +1 -0
  118. package/dist/types/lib/ground/polygon/polygon-shadow-volume.d.ts +39 -0
  119. package/dist/types/lib/ground/polygon/polygon-shadow-volume.d.ts.map +1 -0
  120. package/dist/types/lib/ground/polygon/polygon-style-points.d.ts +29 -0
  121. package/dist/types/lib/ground/polygon/polygon-style-points.d.ts.map +1 -0
  122. package/dist/types/lib/ground/polygon/polygon-subdivide-line.d.ts +93 -0
  123. package/dist/types/lib/ground/polygon/polygon-subdivide-line.d.ts.map +1 -0
  124. package/dist/types/lib/ground/polygon/polygon-subdivide-triangle.d.ts +53 -0
  125. package/dist/types/lib/ground/polygon/polygon-subdivide-triangle.d.ts.map +1 -0
  126. package/dist/types/lib/ground/polygon/polygon-wall-construction.d.ts +77 -0
  127. package/dist/types/lib/ground/polygon/polygon-wall-construction.d.ts.map +1 -0
  128. package/dist/types/lib/ground/polygon/triangulation.d.ts +40 -0
  129. package/dist/types/lib/ground/polygon/triangulation.d.ts.map +1 -0
  130. package/dist/types/lib/ground/primitives.d.ts +262 -0
  131. package/dist/types/lib/ground/primitives.d.ts.map +1 -0
  132. package/dist/types/lib/ground/rectangle/rectangle-attributes.d.ts +29 -0
  133. package/dist/types/lib/ground/rectangle/rectangle-attributes.d.ts.map +1 -0
  134. package/dist/types/lib/ground/rectangle/rectangle-construct-cap.d.ts +53 -0
  135. package/dist/types/lib/ground/rectangle/rectangle-construct-cap.d.ts.map +1 -0
  136. package/dist/types/lib/ground/rectangle/rectangle-construct-extruded.d.ts +35 -0
  137. package/dist/types/lib/ground/rectangle/rectangle-construct-extruded.d.ts.map +1 -0
  138. package/dist/types/lib/ground/rectangle/rectangle-debug.d.ts +22 -0
  139. package/dist/types/lib/ground/rectangle/rectangle-debug.d.ts.map +1 -0
  140. package/dist/types/lib/ground/rectangle/rectangle-extents.d.ts +33 -0
  141. package/dist/types/lib/ground/rectangle/rectangle-extents.d.ts.map +1 -0
  142. package/dist/types/lib/ground/rectangle/rectangle-grid.d.ts +76 -0
  143. package/dist/types/lib/ground/rectangle/rectangle-grid.d.ts.map +1 -0
  144. package/dist/types/lib/ground/rectangle/rectangle-helpers.d.ts +103 -0
  145. package/dist/types/lib/ground/rectangle/rectangle-helpers.d.ts.map +1 -0
  146. package/dist/types/lib/ground/rectangle/rectangle-options.d.ts +21 -0
  147. package/dist/types/lib/ground/rectangle/rectangle-options.d.ts.map +1 -0
  148. package/dist/types/lib/ground/rectangle/rectangle-radians.d.ts +51 -0
  149. package/dist/types/lib/ground/rectangle/rectangle-radians.d.ts.map +1 -0
  150. package/dist/types/lib/ground/rectangle/rectangle-shadow-volume.d.ts +28 -0
  151. package/dist/types/lib/ground/rectangle/rectangle-shadow-volume.d.ts.map +1 -0
  152. package/dist/types/lib/ground/terrain-heights.d.ts +65 -0
  153. package/dist/types/lib/ground/terrain-heights.d.ts.map +1 -0
  154. package/dist/types/lib/ground/terrain-log-depth.d.ts +32 -0
  155. package/dist/types/lib/ground/terrain-log-depth.d.ts.map +1 -0
  156. package/dist/types/lib/ground/text/index.d.ts +7 -0
  157. package/dist/types/lib/ground/text/index.d.ts.map +1 -0
  158. package/dist/types/lib/ground/text/text-canvas.d.ts +22 -0
  159. package/dist/types/lib/ground/text/text-canvas.d.ts.map +1 -0
  160. package/dist/types/lib/ground/text/text-color.d.ts +28 -0
  161. package/dist/types/lib/ground/text/text-color.d.ts.map +1 -0
  162. package/dist/types/lib/ground/text/text-construct-extruded.d.ts +27 -0
  163. package/dist/types/lib/ground/text/text-construct-extruded.d.ts.map +1 -0
  164. package/dist/types/lib/ground/text/text-defaults.d.ts +12 -0
  165. package/dist/types/lib/ground/text/text-defaults.d.ts.map +1 -0
  166. package/dist/types/lib/ground/text/text-extents.d.ts +19 -0
  167. package/dist/types/lib/ground/text/text-extents.d.ts.map +1 -0
  168. package/dist/types/lib/ground/text/text-layout.d.ts +18 -0
  169. package/dist/types/lib/ground/text/text-layout.d.ts.map +1 -0
  170. package/dist/types/lib/ground/text/text-options.d.ts +26 -0
  171. package/dist/types/lib/ground/text/text-options.d.ts.map +1 -0
  172. package/dist/types/lib/ground/text/text-placement.d.ts +34 -0
  173. package/dist/types/lib/ground/text/text-placement.d.ts.map +1 -0
  174. package/dist/types/lib/ground/text/text-primitive.d.ts +74 -0
  175. package/dist/types/lib/ground/text/text-primitive.d.ts.map +1 -0
  176. package/dist/types/lib/ground/text/text-shadow-volume.d.ts +21 -0
  177. package/dist/types/lib/ground/text/text-shadow-volume.d.ts.map +1 -0
  178. package/dist/types/lib/ground/text/text-types.d.ts +156 -0
  179. package/dist/types/lib/ground/text/text-types.d.ts.map +1 -0
  180. package/dist/types/lib/ground/types.d.ts +484 -0
  181. package/dist/types/lib/ground/types.d.ts.map +1 -0
  182. package/dist/types/lib/ground/validation.d.ts +8 -0
  183. package/dist/types/lib/ground/validation.d.ts.map +1 -0
  184. package/package.json +54 -0
@@ -0,0 +1,484 @@
1
+ import type { Color, Matrix3, Matrix4, PerspectiveCamera, Texture, Vector2, Vector3, Vector4, WebGLRenderTarget } from 'three';
2
+ export interface EncodedScalar {
3
+ high: number;
4
+ low: number;
5
+ }
6
+ export interface CesiumGeometryAttribute {
7
+ values: ArrayLike<number>;
8
+ componentsPerAttribute: number;
9
+ }
10
+ export interface CartesianLike {
11
+ x: number;
12
+ y: number;
13
+ z: number;
14
+ }
15
+ export interface CesiumGeometryResult {
16
+ attributes: Record<string, CesiumGeometryAttribute>;
17
+ indices?: Uint8Array | Uint16Array | Uint32Array | number[];
18
+ }
19
+ export interface RectangleDegrees {
20
+ west: number;
21
+ south: number;
22
+ east: number;
23
+ north: number;
24
+ }
25
+ export interface RectangleMeterSize {
26
+ widthMeters: number;
27
+ heightMeters: number;
28
+ }
29
+ export type LonLatPoint = [number, number];
30
+ export interface LongitudeLatitude {
31
+ longitude: number;
32
+ latitude: number;
33
+ }
34
+ export interface EastNorthOffsetMeters {
35
+ eastMeters: number;
36
+ northMeters: number;
37
+ }
38
+ export interface PolygonHierarchyDegrees {
39
+ positions: LongitudeLatitude[];
40
+ holes?: PolygonHierarchyDegrees[];
41
+ }
42
+ export interface RectangleRadians {
43
+ west: number;
44
+ south: number;
45
+ east: number;
46
+ north: number;
47
+ }
48
+ export interface CesiumGroundRectangleOptions {
49
+ points: LonLatPoint[];
50
+ strokeColor: string;
51
+ strokeWidth: number;
52
+ strokeOpacity: number;
53
+ fillColor: string;
54
+ fillOpacity: number;
55
+ visible: boolean;
56
+ }
57
+ export interface CesiumGroundRectanglePrimitiveOptions extends CesiumGroundRectangleOptions {
58
+ granularityRadians?: number;
59
+ minimumHeight?: number;
60
+ maximumHeight?: number;
61
+ renderOrder?: number;
62
+ debugSurface?: boolean;
63
+ debugSurfaceHeight?: number;
64
+ debugSurfaceOpacity?: number;
65
+ fragmentCull?: boolean;
66
+ }
67
+ /**
68
+ * 公开 polygon 选项,语义与矩形 plot-spec 契约保持一致:
69
+ * lon/lat 点环、描边 / 填充、可见性、可选洞环和可选平面内旋转。
70
+ * 旧适配器的 `polygonHierarchyDegrees` 形式也继续接受;构造器会按实际字段分支,
71
+ * 保证既有调用方仍可工作。
72
+ */
73
+ export interface CesiumGroundPolygonOptions {
74
+ points?: LonLatPoint[];
75
+ holes?: LonLatPoint[][];
76
+ hole?: boolean;
77
+ rotationDegrees?: number;
78
+ strokeColor?: string;
79
+ strokeWidth?: number;
80
+ strokeOpacity?: number;
81
+ fillColor?: string;
82
+ fillOpacity?: number;
83
+ visible?: boolean;
84
+ polygonHierarchyDegrees?: PolygonHierarchyDegrees;
85
+ color?: Color | string | number;
86
+ alpha?: number;
87
+ granularityRadians?: number;
88
+ minimumHeight?: number;
89
+ maximumHeight?: number;
90
+ renderOrder?: number;
91
+ fragmentCull?: boolean;
92
+ }
93
+ /**
94
+ * 贴地圆形的 plot-spec 契约:中心 lon/lat、半径(米)、描边 / 填充样式、
95
+ * 可选环线 / 扇区装饰、可选平面内纹理旋转、可选 shadow-volume 高度窗口。
96
+ * 字段形状与参考项目的 `CesiumGroundCircleOptions` 保持一致,方便复用同名 JSON。
97
+ */
98
+ export interface CesiumGroundCircleOptions {
99
+ center: LonLatPoint;
100
+ radius: number;
101
+ strokeColor: string;
102
+ strokeWidth: number;
103
+ strokeOpacity: number;
104
+ fillColor: string;
105
+ fillOpacity: number;
106
+ visible: boolean;
107
+ }
108
+ export interface CesiumGroundCirclePrimitiveOptions extends CesiumGroundCircleOptions {
109
+ height?: number;
110
+ extrudedHeight?: number;
111
+ granularityRadians?: number;
112
+ stRotationRadians?: number;
113
+ ringCount?: number;
114
+ ringGapMeters?: number;
115
+ sectorStartDegrees?: number;
116
+ sectorAngleDegrees?: number;
117
+ minimumHeight?: number;
118
+ maximumHeight?: number;
119
+ renderOrder?: number;
120
+ fragmentCull?: boolean;
121
+ }
122
+ /**
123
+ * 点标绘的形状类型。圆形走圆形渲染管线(CesiumGroundCirclePrimitive),
124
+ * 正方形走矩形渲染管线(CesiumGroundRectanglePrimitive)。
125
+ */
126
+ export type CesiumGroundPointShape = 'circle' | 'square';
127
+ /**
128
+ * 贴地点标绘的 plot-spec 契约:单个 lon/lat 锚点 + 形状 + 米尺寸 +
129
+ * 描边/填充/可见性。size 在 circle 时解释为直径,square 时解释为边长。
130
+ */
131
+ export interface CesiumGroundPointOptions {
132
+ position: LonLatPoint;
133
+ shape: CesiumGroundPointShape;
134
+ size: number;
135
+ strokeColor: string;
136
+ strokeWidth: number;
137
+ strokeOpacity: number;
138
+ fillColor: string;
139
+ fillOpacity: number;
140
+ visible: boolean;
141
+ }
142
+ export interface CesiumGroundPointPrimitiveOptions extends CesiumGroundPointOptions {
143
+ granularityRadians?: number;
144
+ minimumHeight?: number;
145
+ maximumHeight?: number;
146
+ renderOrder?: number;
147
+ fragmentCull?: boolean;
148
+ }
149
+ export interface CesiumClassificationCommandVisibility {
150
+ frontStencil?: boolean;
151
+ backStencil?: boolean;
152
+ color?: boolean;
153
+ }
154
+ /**
155
+ * 贴地线连线方式。'geodesic' = Vincenty 大地线(默认),'rhumb' = 恒向线,
156
+ * 'none' = ECEF 弦(仅在调用方明确要求或极短段时用)。
157
+ */
158
+ export type CesiumGroundArcType = 'none' | 'geodesic' | 'rhumb';
159
+ /**
160
+ * 贴地线宽度模式。'screen' = 像素恒定(默认,缩放不消失),
161
+ * 'world' = 米恒定(远处变细)。
162
+ */
163
+ export type CesiumGroundLineWidthMode = 'screen' | 'world';
164
+ /**
165
+ * 贴地线两端箭头放置模式。
166
+ * - 'none' 无箭头(默认)
167
+ * - 'left' 起点端(points[0])画箭头
168
+ * - 'right' 终点端(points[N-1])画箭头
169
+ * - 'both' 两端都画
170
+ */
171
+ export type CesiumGroundArrowMode = 'none' | 'left' | 'right' | 'both';
172
+ /**
173
+ * 箭头形态:实心三角 / 开口雪佛龙(V 形线条)。
174
+ */
175
+ export type CesiumGroundArrowStyle = 'solid' | 'open';
176
+ /**
177
+ * 贴地折线的 plot-spec 契约:lon/lat 点序 + 颜色 + 宽度 + 可见性。
178
+ * 高级字段(loop / arcType / granularity / width mode / dash / 高度窗口)
179
+ * 全部可选;resolvePublicLineOptions 填默认并严格校验。
180
+ */
181
+ export interface CesiumGroundPolylineOptions {
182
+ /** lon/lat 折点(度),≥ 2 个。 */
183
+ points: LonLatPoint[];
184
+ /** 线色('#rrggbb' 或 css 颜色)。 */
185
+ strokeColor: string;
186
+ /** 不透明度 0..100(与其它图元一致的百分比口径)。 */
187
+ strokeOpacity: number;
188
+ /** 可见性。 */
189
+ visible: boolean;
190
+ /** 屏宽模式下的像素宽(默认 3)。 */
191
+ widthPixels?: number;
192
+ /** 是否闭合(默认 false;2 点强制 false)。 */
193
+ loop?: boolean;
194
+ /** 连线方式(默认 'geodesic')。 */
195
+ arcType?: CesiumGroundArcType;
196
+ /**
197
+ * 加密距离阈值(**米**,默认 9999)。`interpolateSegment` 用
198
+ * `segments = ceil(surfaceDistance / granularity)` 计算每段中间点数;
199
+ * 默认 9999 m 对 km 级线段产生 5-10 个中间点,能保持平滑又不爆量。
200
+ *
201
+ * 字段名以 "Radians" 结尾是历史包袱(Cesium 同名 API),实际单位是米。
202
+ */
203
+ granularityRadians?: number;
204
+ /** 高度窗口下限(米,默认 -55000)。高级。 */
205
+ minimumHeight?: number;
206
+ /** 高度窗口上限(米,默认 +55000)。高级。 */
207
+ maximumHeight?: number;
208
+ /** 线宽模式(默认 'screen')。 */
209
+ widthMode?: CesiumGroundLineWidthMode;
210
+ /** 世界宽模式下的米宽(widthMode==='world' 时使用,默认 5)。 */
211
+ widthMeters?: number;
212
+ /** 渲染顺序(默认 40,> polygon 的 30)。 */
213
+ renderOrder?: number;
214
+ /** 虚线:实线段长(米)。设置且 > 0 即启用虚线。 */
215
+ dashLengthMeters?: number;
216
+ /** 虚线:间隙长(米)。 */
217
+ gapLengthMeters?: number;
218
+ /**
219
+ * 调试:把盒子整体染红显示,跳过 terrain depth 重建 / 平面距离裁切。
220
+ * 用来定位「线段为什么不渲染」——盒子覆盖的屏幕区域就是 FS 实际被调用的
221
+ * 范围,盒子有但没线 → FS 平面距离/depth 裁切问题;盒子无 → 几何 / 视锥
222
+ * 问题。
223
+ */
224
+ debugVolume?: boolean;
225
+ /** 线端箭头:'none'/'left'/'right'/'both'。默认 'none'。 */
226
+ arrowMode?: CesiumGroundArrowMode;
227
+ /** 箭头形态:'solid' 实心三角 / 'open' 开口雪佛龙。默认 'solid'。 */
228
+ arrowStyle?: CesiumGroundArrowStyle;
229
+ /**
230
+ * 箭头尺寸模式(默认 'world',与线 / 面世界模式视觉一致——远小近大)。
231
+ * 对应 Cesium `Billboard.sizeInMeters` 语义:
232
+ * - 'world' = 世界米恒定,远小近大随相机透视(默认,用 `arrowLengthMeters`
233
+ * / `arrowWidthMeters`,shader 直接当米用)。
234
+ * - 'screen' = 屏幕像素恒定,不随相机远近变化(用 `arrowLengthPixels` /
235
+ * `arrowWidthPixels`,shader 端 `pixels × czm_metersPerPixel(P)` 转成米;
236
+ * 与 Cesium Billboard `sizeInMeters=false` 同义)。
237
+ * 与 `widthMode` 独立——通常 `screen` 配 `screen` / `world` 配 `world` 视觉
238
+ * 一致,但混搭也合法(例:线在 world 模式按米渲、箭头在 screen 模式恒定像素,
239
+ * 类似 Cesium 里 `Polyline.width`+像素 billboard 标记的组合)。
240
+ */
241
+ arrowWidthMode?: CesiumGroundLineWidthMode;
242
+ /** 箭头沿线长(屏幕像素,默认 18)。 */
243
+ arrowLengthPixels?: number;
244
+ /** 箭头基底全宽(屏幕像素,默认 16)。 */
245
+ arrowWidthPixels?: number;
246
+ /** world 模式下箭头沿线长(米,默认 30)。 */
247
+ arrowLengthMeters?: number;
248
+ /** world 模式下箭头基底全宽(米,默认 24)。 */
249
+ arrowWidthMeters?: number;
250
+ /** 箭头色,默认跟随 strokeColor。 */
251
+ arrowColor?: string;
252
+ /** 箭头不透明度 0..100,默认跟随 strokeOpacity。 */
253
+ arrowOpacity?: number;
254
+ /** open 样式的斜边笔宽(屏幕像素,默认 3)。 */
255
+ arrowStrokeWidthPixels?: number;
256
+ }
257
+ export interface CesiumGroundFrameState {
258
+ depthTexture: WebGLRenderTarget['texture'];
259
+ width: number;
260
+ height: number;
261
+ camera: PerspectiveCamera;
262
+ /**
263
+ * 物理像素与 CSS 像素的比值,由宿主每帧填入(典型:renderer.getPixelRatio())。
264
+ * 仅 CesiumGroundPolylinePrimitive 在意——`czm_metersPerPixel` 内部要乘它。
265
+ * 面图元不读,缺省 1.0(HiDPI 下线宽偏窄)。
266
+ */
267
+ pixelRatio?: number;
268
+ }
269
+ export interface CesiumLogDepthParameters {
270
+ near: number;
271
+ far: number;
272
+ farDepthFromNearPlusOne: number;
273
+ log2FarDepthFromNearPlusOne: number;
274
+ oneOverLog2FarDepthFromNearPlusOne: number;
275
+ }
276
+ export interface PlanarExtents {
277
+ southWestHigh: Vector3;
278
+ southWestLow: Vector3;
279
+ eastward: Vector3;
280
+ northward: Vector3;
281
+ uvMinAndExtents: Vector4;
282
+ uMaxVmax: Vector4;
283
+ innerMetersRect: Vector4;
284
+ }
285
+ export interface PlanarBounds {
286
+ minX: number;
287
+ maxX: number;
288
+ minY: number;
289
+ maxY: number;
290
+ }
291
+ export interface SharedUniforms {
292
+ [uniform: string]: {
293
+ value: unknown;
294
+ } | undefined;
295
+ czm_encodedCameraPositionMCHigh: {
296
+ value: Vector3;
297
+ };
298
+ czm_encodedCameraPositionMCLow: {
299
+ value: Vector3;
300
+ };
301
+ czm_modelViewRelativeToEye: {
302
+ value: Matrix4;
303
+ };
304
+ czm_modelViewProjectionRelativeToEye: {
305
+ value: Matrix4;
306
+ };
307
+ czm_normal: {
308
+ value: Matrix3;
309
+ };
310
+ czm_geometricToleranceOverMeter: {
311
+ value: number;
312
+ };
313
+ czm_sceneMode: {
314
+ value: number;
315
+ };
316
+ u_globeMinimumAltitude: {
317
+ value: number;
318
+ };
319
+ u_southWest_HIGH: {
320
+ value: Vector3;
321
+ };
322
+ u_southWest_LOW: {
323
+ value: Vector3;
324
+ };
325
+ u_eastward: {
326
+ value: Vector3;
327
+ };
328
+ u_northward: {
329
+ value: Vector3;
330
+ };
331
+ u_uvMinAndExtents: {
332
+ value: Vector4;
333
+ };
334
+ u_uMaxVmax: {
335
+ value: Vector4;
336
+ };
337
+ u_color: {
338
+ value: Vector4;
339
+ };
340
+ u_borderColor: {
341
+ value: Vector4;
342
+ };
343
+ u_borderEnabled: {
344
+ value: number;
345
+ };
346
+ u_borderWidthMeters: {
347
+ value: number;
348
+ };
349
+ u_innerMetersRect: {
350
+ value: Vector4;
351
+ };
352
+ u_cpuWestPlane: {
353
+ value: Vector4;
354
+ };
355
+ u_cpuSouthPlane: {
356
+ value: Vector4;
357
+ };
358
+ u_polygonBorderMode: {
359
+ value: number;
360
+ };
361
+ u_polygonMiterStrokeMode: {
362
+ value: number;
363
+ };
364
+ u_polygonPointCount: {
365
+ value: number;
366
+ };
367
+ u_polygonPoints: {
368
+ value: Vector2[];
369
+ };
370
+ u_circleBorderMode: {
371
+ value: number;
372
+ };
373
+ u_circleCenterMeters: {
374
+ value: Vector2;
375
+ };
376
+ u_circleFillRadiusMeters: {
377
+ value: number;
378
+ };
379
+ u_circleRenderRadiusMeters: {
380
+ value: number;
381
+ };
382
+ u_circleRingCount: {
383
+ value: number;
384
+ };
385
+ u_circleRingGapMeters: {
386
+ value: number;
387
+ };
388
+ u_circleSectorStartRadians: {
389
+ value: number;
390
+ };
391
+ u_circleSectorAngleRadians: {
392
+ value: number;
393
+ };
394
+ czm_globeDepthTexture: {
395
+ value: WebGLRenderTarget['texture'] | null;
396
+ };
397
+ czm_viewport: {
398
+ value: Vector4;
399
+ };
400
+ czm_inverseProjection: {
401
+ value: Matrix4;
402
+ };
403
+ czm_viewportTransformation: {
404
+ value: Matrix4;
405
+ };
406
+ czm_frustumPlanes: {
407
+ value: Vector4;
408
+ };
409
+ czm_currentFrustum: {
410
+ value: Vector3;
411
+ };
412
+ czm_farDepthFromNearPlusOne: {
413
+ value: number;
414
+ };
415
+ czm_log2FarDepthFromNearPlusOne: {
416
+ value: number;
417
+ };
418
+ czm_oneOverLog2FarDepthFromNearPlusOne: {
419
+ value: number;
420
+ };
421
+ /**
422
+ * 贴地文本内容纹理。CesiumGroundTextPrimitive 经 classification 的
423
+ * extraUniforms 注入真实纹理;其它图元保持 `{ value: null }`。GLSL 端用
424
+ * `#ifdef CESIUM_THREE_TEXT` 守住声明,不污染其它材质编译。
425
+ */
426
+ u_textTexture: {
427
+ value: Texture | null;
428
+ };
429
+ czm_projection?: {
430
+ value: Matrix4;
431
+ };
432
+ czm_pixelRatio?: {
433
+ value: number;
434
+ };
435
+ u_lineWidthPixels?: {
436
+ value: number;
437
+ };
438
+ u_lineWidthMode?: {
439
+ value: number;
440
+ };
441
+ u_lineWidthMeters?: {
442
+ value: number;
443
+ };
444
+ u_lineDashEnabled?: {
445
+ value: number;
446
+ };
447
+ u_lineDashLengthMeters?: {
448
+ value: number;
449
+ };
450
+ u_lineGapLengthMeters?: {
451
+ value: number;
452
+ };
453
+ u_lineTotalMeters?: {
454
+ value: number;
455
+ };
456
+ u_arrowWidthMode?: {
457
+ value: number;
458
+ };
459
+ u_arrowLengthPixels?: {
460
+ value: number;
461
+ };
462
+ u_arrowHalfWidthPixels?: {
463
+ value: number;
464
+ };
465
+ u_arrowLengthMeters?: {
466
+ value: number;
467
+ };
468
+ u_arrowHalfWidthMeters?: {
469
+ value: number;
470
+ };
471
+ u_arrowColor?: {
472
+ value: Vector4;
473
+ };
474
+ u_arrowStrokeHalfPixels?: {
475
+ value: number;
476
+ };
477
+ u_lineArrowClipEndEnabled?: {
478
+ value: number;
479
+ };
480
+ u_lineArrowClipStartEnabled?: {
481
+ value: number;
482
+ };
483
+ }
484
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/lib/ground/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { WebGLRenderer } from 'three';
2
+ /**
3
+ * 检查 Cesium classification 需要的 WebGL 特性。
4
+ *
5
+ * @param renderer 当前使用的 Three WebGL renderer。
6
+ */
7
+ export declare function validateCesiumGroundRenderer(renderer: WebGLRenderer): void;
8
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../../src/lib/ground/validation.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAE,QAAQ,EAAE,aAAa,GAAI,IAAI,CAU5E"}
package/package.json ADDED
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "cesium-to-three",
3
+ "version": "0.1.0",
4
+ "type": "module",
5
+ "description": "Cesium-style ground primitives for Three.js.",
6
+ "main": "./dist/index.js",
7
+ "module": "./dist/index.js",
8
+ "types": "./dist/types/cesium-three-ground.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/types/cesium-three-ground.d.ts",
12
+ "import": "./dist/index.js"
13
+ },
14
+ "./ground": {
15
+ "types": "./dist/types/lib/ground/index.d.ts",
16
+ "import": "./dist/ground.js"
17
+ },
18
+ "./arrow": {
19
+ "types": "./dist/types/lib/arrow/index.d.ts",
20
+ "import": "./dist/arrow.js"
21
+ },
22
+ "./package.json": "./package.json"
23
+ },
24
+ "files": [
25
+ "dist",
26
+ "README.md"
27
+ ],
28
+ "publishConfig": {
29
+ "access": "public"
30
+ },
31
+ "scripts": {
32
+ "dev": "vite",
33
+ "build": "tsc -b && vite build",
34
+ "build:lib": "vite build --config vite.lib.config.ts && tsc -p tsconfig.lib.json --emitDeclarationOnly",
35
+ "prepack": "npm run build:lib",
36
+ "preview": "vite preview",
37
+ "type-check": "tsc --noEmit"
38
+ },
39
+ "dependencies": {
40
+ "3d-tiles-renderer": "^0.4.24",
41
+ "earcut": "^3.0.2",
42
+ "mersenne-twister": "^1.1.0",
43
+ "rbush": "^4.0.1",
44
+ "three": "^0.169.0",
45
+ "urijs": "^1.19.11"
46
+ },
47
+ "devDependencies": {
48
+ "@types/node": "^25.9.0",
49
+ "@types/three": "^0.169.0",
50
+ "lil-gui": "^0.19.2",
51
+ "typescript": "~5.3.0",
52
+ "vite": "^5.0.0"
53
+ }
54
+ }