@geode/opengeodeweb-front 10.28.1-rc.4 → 10.29.0-rc.1

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 (56) hide show
  1. package/app/components/Viewer/EdgedCurve/SpecificEdgesOptions.vue +21 -0
  2. package/app/components/Viewer/Generic/Mesh/CellsOptions.vue +21 -0
  3. package/app/components/Viewer/Generic/Mesh/EdgesOptions.vue +80 -0
  4. package/app/components/Viewer/Generic/Mesh/PointsOptions.vue +10 -0
  5. package/app/components/Viewer/Generic/Mesh/PolygonsOptions.vue +81 -0
  6. package/app/components/Viewer/Generic/Mesh/PolyhedraOptions.vue +20 -0
  7. package/app/components/Viewer/Generic/Model/BlocksOptions.vue +36 -0
  8. package/app/components/Viewer/Generic/Model/CornersOptions.vue +18 -0
  9. package/app/components/Viewer/Generic/Model/LinesOptions.vue +36 -0
  10. package/app/components/Viewer/Generic/Model/SurfacesOptions.vue +36 -0
  11. package/app/components/Viewer/Options/AttributeSelector.vue +47 -38
  12. package/app/components/Viewer/Options/ColoringTypeSelector.vue +26 -22
  13. package/app/components/Viewer/PointSet/SpecificPointsOptions.vue +10 -0
  14. package/app/components/Viewer/Solid/SpecificPolyhedraOptions.vue +20 -0
  15. package/app/components/Viewer/Surface/PolygonsOptions.vue +20 -0
  16. package/internal/stores/data_style/mesh/cells/cell.js +94 -60
  17. package/internal/stores/data_style/mesh/cells/index.js +21 -22
  18. package/internal/stores/data_style/mesh/cells/vertex.js +83 -64
  19. package/internal/stores/data_style/mesh/edges/edge.js +83 -67
  20. package/internal/stores/data_style/mesh/edges/index.js +22 -19
  21. package/internal/stores/data_style/mesh/edges/vertex.js +87 -65
  22. package/internal/stores/data_style/mesh/points/index.js +9 -9
  23. package/internal/stores/data_style/mesh/points/vertex.js +96 -99
  24. package/internal/stores/data_style/mesh/polygons/index.js +26 -16
  25. package/internal/stores/data_style/mesh/polygons/polygon.js +88 -66
  26. package/internal/stores/data_style/mesh/polygons/vertex.js +88 -66
  27. package/internal/stores/data_style/mesh/polyhedra/index.js +33 -22
  28. package/internal/stores/data_style/mesh/polyhedra/polyhedron.js +101 -103
  29. package/internal/stores/data_style/mesh/polyhedra/vertex.js +101 -103
  30. package/internal/stores/data_style/model/blocks/color.js +27 -28
  31. package/internal/stores/data_style/model/blocks/index.js +140 -72
  32. package/internal/stores/data_style/model/blocks/polyhedron.js +114 -58
  33. package/internal/stores/data_style/model/blocks/vertex.js +107 -57
  34. package/internal/stores/data_style/model/common.js +6 -6
  35. package/internal/stores/data_style/model/corners/color.js +12 -16
  36. package/internal/stores/data_style/model/corners/index.js +95 -63
  37. package/internal/stores/data_style/model/corners/vertex.js +108 -58
  38. package/internal/stores/data_style/model/lines/color.js +18 -23
  39. package/internal/stores/data_style/model/lines/edge.js +106 -54
  40. package/internal/stores/data_style/model/lines/index.js +132 -71
  41. package/internal/stores/data_style/model/lines/vertex.js +107 -54
  42. package/internal/stores/data_style/model/surfaces/color.js +24 -32
  43. package/internal/stores/data_style/model/surfaces/index.js +142 -74
  44. package/internal/stores/data_style/model/surfaces/polygon.js +114 -58
  45. package/internal/stores/data_style/model/surfaces/vertex.js +114 -58
  46. package/internal/stores/data_style/state.js +105 -94
  47. package/package.json +1 -1
  48. package/tests/integration/stores/data_style/mesh/cells.nuxt.test.js +200 -24
  49. package/tests/integration/stores/data_style/mesh/edges.nuxt.test.js +132 -34
  50. package/tests/integration/stores/data_style/mesh/points.nuxt.test.js +60 -11
  51. package/tests/integration/stores/data_style/mesh/polygons.nuxt.test.js +116 -22
  52. package/tests/integration/stores/data_style/mesh/polyhedra.nuxt.test.js +145 -34
  53. package/tests/integration/stores/data_style/model/blocks.nuxt.test.js +206 -33
  54. package/tests/integration/stores/data_style/model/corners.nuxt.test.js +94 -15
  55. package/tests/integration/stores/data_style/model/lines.nuxt.test.js +187 -30
  56. package/tests/integration/stores/data_style/model/surfaces.nuxt.test.js +379 -31
@@ -64,6 +64,15 @@ const vertex_attribute_name = computed({
64
64
  hybridViewerStore.remoteRender();
65
65
  },
66
66
  });
67
+ const vertex_attribute_item = computed({
68
+ get: () => dataStyleStore.meshEdgesVertexAttributeItem(id.value),
69
+ set: async (newValue) => {
70
+ await applyBatchStyle(id.value, (targetId) =>
71
+ dataStyleStore.setMeshEdgesVertexAttributeItem(targetId, newValue),
72
+ );
73
+ hybridViewerStore.remoteRender();
74
+ },
75
+ });
67
76
  const vertex_attribute_range = computed({
68
77
  get: () => dataStyleStore.meshEdgesVertexAttributeRange(id.value),
69
78
  set: async (newValue) => {
@@ -91,6 +100,15 @@ const edge_attribute_name = computed({
91
100
  hybridViewerStore.remoteRender();
92
101
  },
93
102
  });
103
+ const edge_attribute_item = computed({
104
+ get: () => dataStyleStore.meshEdgesEdgeAttributeItem(id.value),
105
+ set: async (newValue) => {
106
+ await applyBatchStyle(id.value, (targetId) =>
107
+ dataStyleStore.setMeshEdgesEdgeAttributeItem(targetId, newValue),
108
+ );
109
+ hybridViewerStore.remoteRender();
110
+ },
111
+ });
94
112
  const edge_attribute_range = computed({
95
113
  get: () => dataStyleStore.meshEdgesEdgeAttributeRange(id.value),
96
114
  set: async (newValue) => {
@@ -110,6 +128,7 @@ const edge_attribute_color_map = computed({
110
128
  },
111
129
  });
112
130
  </script>
131
+
113
132
  <template>
114
133
  <ViewerContextMenuItem
115
134
  data-testid="meshEdgesMenu"
@@ -127,9 +146,11 @@ const edge_attribute_color_map = computed({
127
146
  v-model:coloring_style_key="coloring_style_key"
128
147
  v-model:color="color"
129
148
  v-model:vertex_attribute_name="vertex_attribute_name"
149
+ v-model:vertex_attribute_item="vertex_attribute_item"
130
150
  v-model:vertex_attribute_range="vertex_attribute_range"
131
151
  v-model:vertex_attribute_color_map="vertex_attribute_color_map"
132
152
  v-model:edge_attribute_name="edge_attribute_name"
153
+ v-model:edge_attribute_item="edge_attribute_item"
133
154
  v-model:edge_attribute_range="edge_attribute_range"
134
155
  v-model:edge_attribute_color_map="edge_attribute_color_map"
135
156
  />
@@ -55,6 +55,7 @@ const textures = computed({
55
55
  hybridViewerStore.remoteRender();
56
56
  },
57
57
  });
58
+
58
59
  const vertex_attribute_name = computed({
59
60
  get: () => dataStyleStore.meshCellsVertexAttributeName(id.value),
60
61
  set: async (newValue) => {
@@ -64,6 +65,15 @@ const vertex_attribute_name = computed({
64
65
  hybridViewerStore.remoteRender();
65
66
  },
66
67
  });
68
+ const vertex_attribute_item = computed({
69
+ get: () => dataStyleStore.meshCellsVertexAttributeItem(id.value),
70
+ set: async (newValue) => {
71
+ await applyBatchStyle(id.value, (targetId) =>
72
+ dataStyleStore.setMeshCellsVertexAttributeItem(targetId, newValue),
73
+ );
74
+ hybridViewerStore.remoteRender();
75
+ },
76
+ });
67
77
  const vertex_attribute_range = computed({
68
78
  get: () => dataStyleStore.meshCellsVertexAttributeRange(id.value),
69
79
  set: async (newValue) => {
@@ -91,6 +101,15 @@ const cell_attribute_name = computed({
91
101
  hybridViewerStore.remoteRender();
92
102
  },
93
103
  });
104
+ const cell_attribute_item = computed({
105
+ get: () => dataStyleStore.meshCellsCellAttributeItem(id.value),
106
+ set: async (newValue) => {
107
+ await applyBatchStyle(id.value, (targetId) =>
108
+ dataStyleStore.setMeshCellsCellAttributeItem(targetId, newValue),
109
+ );
110
+ hybridViewerStore.remoteRender();
111
+ },
112
+ });
94
113
  const cell_attribute_range = computed({
95
114
  get: () => dataStyleStore.meshCellsCellAttributeRange(id.value),
96
115
  set: async (newValue) => {
@@ -128,9 +147,11 @@ const cell_attribute_color_map = computed({
128
147
  v-model:color="color"
129
148
  v-model:textures="textures"
130
149
  v-model:vertex_attribute_name="vertex_attribute_name"
150
+ v-model:vertex_attribute_item="vertex_attribute_item"
131
151
  v-model:vertex_attribute_range="vertex_attribute_range"
132
152
  v-model:vertex_attribute_color_map="vertex_attribute_color_map"
133
153
  v-model:cell_attribute_name="cell_attribute_name"
154
+ v-model:cell_attribute_item="cell_attribute_item"
134
155
  v-model:cell_attribute_range="cell_attribute_range"
135
156
  v-model:cell_attribute_color_map="cell_attribute_color_map"
136
157
  />
@@ -56,6 +56,78 @@ const color = computed({
56
56
  hybridViewerStore.remoteRender();
57
57
  },
58
58
  });
59
+ const vertex_attribute_name = computed({
60
+ get: () => dataStyleStore.meshEdgesVertexAttributeName(id.value),
61
+ set: async (newValue) => {
62
+ await applyBatchStyle(id.value, (targetId) =>
63
+ dataStyleStore.setMeshEdgesVertexAttributeName(targetId, newValue),
64
+ );
65
+ hybridViewerStore.remoteRender();
66
+ },
67
+ });
68
+ const vertex_attribute_item = computed({
69
+ get: () => dataStyleStore.meshEdgesVertexAttributeItem(id.value),
70
+ set: async (newValue) => {
71
+ await applyBatchStyle(id.value, (targetId) =>
72
+ dataStyleStore.setMeshEdgesVertexAttributeItem(targetId, newValue),
73
+ );
74
+ hybridViewerStore.remoteRender();
75
+ },
76
+ });
77
+ const vertex_attribute_range = computed({
78
+ get: () => dataStyleStore.meshEdgesVertexAttributeRange(id.value),
79
+ set: async (newValue) => {
80
+ await applyBatchStyle(id.value, (targetId) =>
81
+ dataStyleStore.setMeshEdgesVertexAttributeRange(targetId, newValue[0], newValue[1]),
82
+ );
83
+ hybridViewerStore.remoteRender();
84
+ },
85
+ });
86
+ const vertex_attribute_color_map = computed({
87
+ get: () => dataStyleStore.meshEdgesVertexAttributeColorMap(id.value),
88
+ set: async (newValue) => {
89
+ await applyBatchStyle(id.value, (targetId) =>
90
+ dataStyleStore.setMeshEdgesVertexAttributeColorMap(targetId, newValue),
91
+ );
92
+ hybridViewerStore.remoteRender();
93
+ },
94
+ });
95
+ const edge_attribute_name = computed({
96
+ get: () => dataStyleStore.meshEdgesEdgeAttributeName(id.value),
97
+ set: async (newValue) => {
98
+ await applyBatchStyle(id.value, (targetId) =>
99
+ dataStyleStore.setMeshEdgesEdgeAttributeName(targetId, newValue),
100
+ );
101
+ hybridViewerStore.remoteRender();
102
+ },
103
+ });
104
+ const edge_attribute_item = computed({
105
+ get: () => dataStyleStore.meshEdgesEdgeAttributeItem(id.value),
106
+ set: async (newValue) => {
107
+ await applyBatchStyle(id.value, (targetId) =>
108
+ dataStyleStore.setMeshEdgesEdgeAttributeItem(targetId, newValue),
109
+ );
110
+ hybridViewerStore.remoteRender();
111
+ },
112
+ });
113
+ const edge_attribute_range = computed({
114
+ get: () => dataStyleStore.meshEdgesEdgeAttributeRange(id.value),
115
+ set: async (newValue) => {
116
+ await applyBatchStyle(id.value, (targetId) =>
117
+ dataStyleStore.setMeshEdgesEdgeAttributeRange(targetId, newValue[0], newValue[1]),
118
+ );
119
+ hybridViewerStore.remoteRender();
120
+ },
121
+ });
122
+ const edge_attribute_color_map = computed({
123
+ get: () => dataStyleStore.meshEdgesEdgeAttributeColorMap(id.value),
124
+ set: async (newValue) => {
125
+ await applyBatchStyle(id.value, (targetId) =>
126
+ dataStyleStore.setMeshEdgesEdgeAttributeColorMap(targetId, newValue),
127
+ );
128
+ hybridViewerStore.remoteRender();
129
+ },
130
+ });
59
131
  </script>
60
132
 
61
133
  <template>
@@ -81,6 +153,14 @@ const color = computed({
81
153
  :id="id"
82
154
  v-model:coloring_style_key="coloring_style_key"
83
155
  v-model:color="color"
156
+ v-model:vertex_attribute_name="vertex_attribute_name"
157
+ v-model:vertex_attribute_item="vertex_attribute_item"
158
+ v-model:vertex_attribute_range="vertex_attribute_range"
159
+ v-model:vertex_attribute_color_map="vertex_attribute_color_map"
160
+ v-model:edge_attribute_name="edge_attribute_name"
161
+ v-model:edge_attribute_item="edge_attribute_item"
162
+ v-model:edge_attribute_range="edge_attribute_range"
163
+ v-model:edge_attribute_color_map="edge_attribute_color_map"
84
164
  />
85
165
  </template>
86
166
  </template>
@@ -65,6 +65,15 @@ const vertex_attribute_name = computed({
65
65
  hybridViewerStore.remoteRender();
66
66
  },
67
67
  });
68
+ const vertex_attribute_item = computed({
69
+ get: () => dataStyleStore.meshPointsVertexAttributeItem(id.value),
70
+ set: async (newValue) => {
71
+ await applyBatchStyle(id.value, (targetId) =>
72
+ dataStyleStore.setMeshPointsVertexAttributeItem(targetId, newValue),
73
+ );
74
+ hybridViewerStore.remoteRender();
75
+ },
76
+ });
68
77
  const vertex_attribute_range = computed({
69
78
  get: () => dataStyleStore.meshPointsVertexAttributeRange(id.value),
70
79
  set: async (newValue) => {
@@ -109,6 +118,7 @@ const vertex_attribute_color_map = computed({
109
118
  v-model:coloring_style_key="coloring_style_key"
110
119
  v-model:color="color"
111
120
  v-model:vertex_attribute_name="vertex_attribute_name"
121
+ v-model:vertex_attribute_item="vertex_attribute_item"
112
122
  v-model:vertex_attribute_range="vertex_attribute_range"
113
123
  v-model:vertex_attribute_color_map="vertex_attribute_color_map"
114
124
  :capabilities="{ vertex: { available: false } }"
@@ -56,6 +56,79 @@ const textures = computed({
56
56
  hybridViewerStore.remoteRender();
57
57
  },
58
58
  });
59
+
60
+ const vertex_attribute_name = computed({
61
+ get: () => dataStyleStore.meshPolygonsVertexAttributeName(id.value),
62
+ set: async (newValue) => {
63
+ await applyBatchStyle(id.value, (targetId) =>
64
+ dataStyleStore.setMeshPolygonsVertexAttributeName(targetId, newValue),
65
+ );
66
+ hybridViewerStore.remoteRender();
67
+ },
68
+ });
69
+ const vertex_attribute_item = computed({
70
+ get: () => dataStyleStore.meshPolygonsVertexAttributeItem(id.value),
71
+ set: async (newValue) => {
72
+ await applyBatchStyle(id.value, (targetId) =>
73
+ dataStyleStore.setMeshPolygonsVertexAttributeItem(targetId, newValue),
74
+ );
75
+ hybridViewerStore.remoteRender();
76
+ },
77
+ });
78
+ const vertex_attribute_range = computed({
79
+ get: () => dataStyleStore.meshPolygonsVertexAttributeRange(id.value),
80
+ set: async (newValue) => {
81
+ await applyBatchStyle(id.value, (targetId) =>
82
+ dataStyleStore.setMeshPolygonsVertexAttributeRange(targetId, newValue[0], newValue[1]),
83
+ );
84
+ hybridViewerStore.remoteRender();
85
+ },
86
+ });
87
+ const vertex_attribute_color_map = computed({
88
+ get: () => dataStyleStore.meshPolygonsVertexAttributeColorMap(id.value),
89
+ set: async (newValue) => {
90
+ await applyBatchStyle(id.value, (targetId) =>
91
+ dataStyleStore.setMeshPolygonsVertexAttributeColorMap(targetId, newValue),
92
+ );
93
+ hybridViewerStore.remoteRender();
94
+ },
95
+ });
96
+ const polygon_attribute_name = computed({
97
+ get: () => dataStyleStore.meshPolygonsPolygonAttributeName(id.value),
98
+ set: async (newValue) => {
99
+ await applyBatchStyle(id.value, (targetId) =>
100
+ dataStyleStore.setMeshPolygonsPolygonAttributeName(targetId, newValue),
101
+ );
102
+ hybridViewerStore.remoteRender();
103
+ },
104
+ });
105
+ const polygon_attribute_item = computed({
106
+ get: () => dataStyleStore.meshPolygonsPolygonAttributeItem(id.value),
107
+ set: async (newValue) => {
108
+ await applyBatchStyle(id.value, (targetId) =>
109
+ dataStyleStore.setMeshPolygonsPolygonAttributeItem(targetId, newValue),
110
+ );
111
+ hybridViewerStore.remoteRender();
112
+ },
113
+ });
114
+ const polygon_attribute_range = computed({
115
+ get: () => dataStyleStore.meshPolygonsPolygonAttributeRange(id.value),
116
+ set: async (newValue) => {
117
+ await applyBatchStyle(id.value, (targetId) =>
118
+ dataStyleStore.setMeshPolygonsPolygonAttributeRange(targetId, newValue[0], newValue[1]),
119
+ );
120
+ hybridViewerStore.remoteRender();
121
+ },
122
+ });
123
+ const polygon_attribute_color_map = computed({
124
+ get: () => dataStyleStore.meshPolygonsPolygonAttributeColorMap(id.value),
125
+ set: async (newValue) => {
126
+ await applyBatchStyle(id.value, (targetId) =>
127
+ dataStyleStore.setMeshPolygonsPolygonAttributeColorMap(targetId, newValue),
128
+ );
129
+ hybridViewerStore.remoteRender();
130
+ },
131
+ });
59
132
  </script>
60
133
 
61
134
  <template>
@@ -77,6 +150,14 @@ const textures = computed({
77
150
  v-model:coloring_style_key="coloring_style_key"
78
151
  v-model:color="color"
79
152
  v-model:textures="textures"
153
+ v-model:vertex_attribute_name="vertex_attribute_name"
154
+ v-model:vertex_attribute_item="vertex_attribute_item"
155
+ v-model:vertex_attribute_range="vertex_attribute_range"
156
+ v-model:vertex_attribute_color_map="vertex_attribute_color_map"
157
+ v-model:polygon_attribute_name="polygon_attribute_name"
158
+ v-model:polygon_attribute_item="polygon_attribute_item"
159
+ v-model:polygon_attribute_range="polygon_attribute_range"
160
+ v-model:polygon_attribute_color_map="polygon_attribute_color_map"
80
161
  :capabilities="capabilities"
81
162
  />
82
163
  </template>
@@ -55,6 +55,15 @@ const vertex_attribute_name = computed({
55
55
  hybridViewerStore.remoteRender();
56
56
  },
57
57
  });
58
+ const vertex_attribute_item = computed({
59
+ get: () => dataStyleStore.meshPolyhedraVertexAttributeItem(id.value),
60
+ set: async (newValue) => {
61
+ await applyBatchStyle(id.value, (targetId) =>
62
+ dataStyleStore.setMeshPolyhedraVertexAttributeItem(targetId, newValue),
63
+ );
64
+ hybridViewerStore.remoteRender();
65
+ },
66
+ });
58
67
  const vertex_attribute_range = computed({
59
68
  get: () => dataStyleStore.meshPolyhedraVertexAttributeRange(id.value),
60
69
  set: async (newValue) => {
@@ -82,6 +91,15 @@ const polyhedron_attribute_name = computed({
82
91
  hybridViewerStore.remoteRender();
83
92
  },
84
93
  });
94
+ const polyhedron_attribute_item = computed({
95
+ get: () => dataStyleStore.meshPolyhedraPolyhedronAttributeItem(id.value),
96
+ set: async (newValue) => {
97
+ await applyBatchStyle(id.value, (targetId) =>
98
+ dataStyleStore.setMeshPolyhedraPolyhedronAttributeItem(targetId, newValue),
99
+ );
100
+ hybridViewerStore.remoteRender();
101
+ },
102
+ });
85
103
  const polyhedron_attribute_range = computed({
86
104
  get: () => dataStyleStore.meshPolyhedraPolyhedronAttributeRange(id.value),
87
105
  set: async (newValue) => {
@@ -123,9 +141,11 @@ const polyhedron_attribute_color_map = computed({
123
141
  v-model:coloring_style_key="coloring_style_key"
124
142
  v-model:color="color"
125
143
  v-model:vertex_attribute_name="vertex_attribute_name"
144
+ v-model:vertex_attribute_item="vertex_attribute_item"
126
145
  v-model:vertex_attribute_range="vertex_attribute_range"
127
146
  v-model:vertex_attribute_color_map="vertex_attribute_color_map"
128
147
  v-model:polyhedron_attribute_name="polyhedron_attribute_name"
148
+ v-model:polyhedron_attribute_item="polyhedron_attribute_item"
129
149
  v-model:polyhedron_attribute_range="polyhedron_attribute_range"
130
150
  v-model:polyhedron_attribute_color_map="polyhedron_attribute_color_map"
131
151
  :capabilities="{
@@ -74,6 +74,14 @@ const blocksVertexAttributeName = computed({
74
74
  },
75
75
  });
76
76
 
77
+ const blocksVertexAttributeItem = computed({
78
+ get: () => dataStyleStore.modelBlocksVertexAttributeItem(modelId, targetBlockIds[0]),
79
+ set: async (newValue) => {
80
+ await dataStyleStore.setModelBlocksVertexAttributeItem(modelId, targetBlockIds, newValue);
81
+ hybridViewerStore.remoteRender();
82
+ },
83
+ });
84
+
77
85
  const blocksVertexAttributeRange = computed({
78
86
  get: () => dataStyleStore.modelBlocksVertexAttributeRange(modelId, targetBlockIds[0]),
79
87
  set: async (newValue) => {
@@ -103,6 +111,14 @@ const blocksPolyhedronAttributeName = computed({
103
111
  },
104
112
  });
105
113
 
114
+ const blocksPolyhedronAttributeItem = computed({
115
+ get: () => dataStyleStore.modelBlocksPolyhedronAttributeItem(modelId, targetBlockIds[0]),
116
+ set: async (newValue) => {
117
+ await dataStyleStore.setModelBlocksPolyhedronAttributeItem(modelId, targetBlockIds, newValue);
118
+ hybridViewerStore.remoteRender();
119
+ },
120
+ });
121
+
106
122
  const blocksPolyhedronAttributeRange = computed({
107
123
  get: () => dataStyleStore.modelBlocksPolyhedronAttributeRange(modelId, targetBlockIds[0]),
108
124
  set: async (newValue) => {
@@ -137,6 +153,14 @@ const vertexAttributeName = computed({
137
153
  },
138
154
  });
139
155
 
156
+ const vertexAttributeItem = computed({
157
+ get: () => dataStyleStore.modelBlocksVertexAttributeItem(modelId, blockId),
158
+ set: async (newValue) => {
159
+ await dataStyleStore.setModelBlocksVertexAttributeItem(modelId, [blockId], newValue);
160
+ hybridViewerStore.remoteRender();
161
+ },
162
+ });
163
+
140
164
  const vertexAttributeRange = computed({
141
165
  get: () => dataStyleStore.modelBlocksVertexAttributeRange(modelId, blockId),
142
166
  set: async (newValue) => {
@@ -166,6 +190,14 @@ const polyhedronAttributeName = computed({
166
190
  },
167
191
  });
168
192
 
193
+ const polyhedronAttributeItem = computed({
194
+ get: () => dataStyleStore.modelBlocksPolyhedronAttributeItem(modelId, blockId),
195
+ set: async (newValue) => {
196
+ await dataStyleStore.setModelBlocksPolyhedronAttributeItem(modelId, [blockId], newValue);
197
+ hybridViewerStore.remoteRender();
198
+ },
199
+ });
200
+
169
201
  const polyhedronAttributeRange = computed({
170
202
  get: () => dataStyleStore.modelBlocksPolyhedronAttributeRange(modelId, blockId),
171
203
  set: async (newValue) => {
@@ -210,9 +242,11 @@ const polyhedronSchema = back_schemas.opengeodeweb_back.model_component_polyhedr
210
242
  v-model:coloring_style_key="blocksActiveColoring"
211
243
  v-model:color="blocksColor"
212
244
  v-model:vertex_attribute_name="blocksVertexAttributeName"
245
+ v-model:vertex_attribute_item="blocksVertexAttributeItem"
213
246
  v-model:vertex_attribute_range="blocksVertexAttributeRange"
214
247
  v-model:vertex_attribute_color_map="blocksVertexAttributeColorMap"
215
248
  v-model:polyhedron_attribute_name="blocksPolyhedronAttributeName"
249
+ v-model:polyhedron_attribute_item="blocksPolyhedronAttributeItem"
216
250
  v-model:polyhedron_attribute_range="blocksPolyhedronAttributeRange"
217
251
  v-model:polyhedron_attribute_color_map="blocksPolyhedronAttributeColorMap"
218
252
  :capabilities="capabilities"
@@ -229,9 +263,11 @@ const polyhedronSchema = back_schemas.opengeodeweb_back.model_component_polyhedr
229
263
  v-model:coloring_style_key="blockActiveColoring"
230
264
  v-model:color="blockColor"
231
265
  v-model:vertex_attribute_name="vertexAttributeName"
266
+ v-model:vertex_attribute_item="vertexAttributeItem"
232
267
  v-model:vertex_attribute_range="vertexAttributeRange"
233
268
  v-model:vertex_attribute_color_map="vertexAttributeColorMap"
234
269
  v-model:polyhedron_attribute_name="polyhedronAttributeName"
270
+ v-model:polyhedron_attribute_item="polyhedronAttributeItem"
235
271
  v-model:polyhedron_attribute_range="polyhedronAttributeRange"
236
272
  v-model:polyhedron_attribute_color_map="polyhedronAttributeColorMap"
237
273
  :capabilities="capabilities"
@@ -75,6 +75,14 @@ const cornersVertexAttributeName = computed({
75
75
  },
76
76
  });
77
77
 
78
+ const cornersVertexAttributeItem = computed({
79
+ get: () => dataStyleStore.modelCornersVertexAttributeItem(modelId, targetCornerIds[0]),
80
+ set: async (newValue) => {
81
+ await dataStyleStore.setModelCornersVertexAttributeItem(modelId, targetCornerIds, newValue);
82
+ hybridViewerStore.remoteRender();
83
+ },
84
+ });
85
+
78
86
  const cornersVertexAttributeRange = computed({
79
87
  get: () => dataStyleStore.modelCornersVertexAttributeRange(modelId, targetCornerIds[0]),
80
88
  set: async (newValue) => {
@@ -105,6 +113,14 @@ const vertexAttributeName = computed({
105
113
  },
106
114
  });
107
115
 
116
+ const vertexAttributeItem = computed({
117
+ get: () => dataStyleStore.modelCornersVertexAttributeItem(modelId, cornerId),
118
+ set: async (newValue) => {
119
+ await dataStyleStore.setModelCornersVertexAttributeItem(modelId, [cornerId], newValue);
120
+ hybridViewerStore.remoteRender();
121
+ },
122
+ });
123
+
108
124
  const vertexAttributeRange = computed({
109
125
  get: () => dataStyleStore.modelCornersVertexAttributeRange(modelId, cornerId),
110
126
  set: async (newValue) => {
@@ -148,6 +164,7 @@ const vertexSchema = back_schemas.opengeodeweb_back.model_component_vertex_attri
148
164
  v-model:coloring_style_key="cornersActiveColoring"
149
165
  v-model:color="cornersColor"
150
166
  v-model:vertex_attribute_name="cornersVertexAttributeName"
167
+ v-model:vertex_attribute_item="cornersVertexAttributeItem"
151
168
  v-model:vertex_attribute_range="cornersVertexAttributeRange"
152
169
  v-model:vertex_attribute_color_map="cornersVertexAttributeColorMap"
153
170
  :capabilities="capabilities"
@@ -164,6 +181,7 @@ const vertexSchema = back_schemas.opengeodeweb_back.model_component_vertex_attri
164
181
  v-model:coloring_style_key="cornerActiveColoring"
165
182
  v-model:color="cornerColor"
166
183
  v-model:vertex_attribute_name="vertexAttributeName"
184
+ v-model:vertex_attribute_item="vertexAttributeItem"
167
185
  v-model:vertex_attribute_range="vertexAttributeRange"
168
186
  v-model:vertex_attribute_color_map="vertexAttributeColorMap"
169
187
  :capabilities="capabilities"
@@ -74,6 +74,14 @@ const linesVertexAttributeName = computed({
74
74
  },
75
75
  });
76
76
 
77
+ const linesVertexAttributeItem = computed({
78
+ get: () => dataStyleStore.modelLinesVertexAttributeItem(modelId, targetLineIds[0]),
79
+ set: async (newValue) => {
80
+ await dataStyleStore.setModelLinesVertexAttributeItem(modelId, targetLineIds, newValue);
81
+ hybridViewerStore.remoteRender();
82
+ },
83
+ });
84
+
77
85
  const linesVertexAttributeRange = computed({
78
86
  get: () => dataStyleStore.modelLinesVertexAttributeRange(modelId, targetLineIds[0]),
79
87
  set: async (newValue) => {
@@ -103,6 +111,14 @@ const linesEdgeAttributeName = computed({
103
111
  },
104
112
  });
105
113
 
114
+ const linesEdgeAttributeItem = computed({
115
+ get: () => dataStyleStore.modelLinesEdgeAttributeItem(modelId, targetLineIds[0]),
116
+ set: async (newValue) => {
117
+ await dataStyleStore.setModelLinesEdgeAttributeItem(modelId, targetLineIds, newValue);
118
+ hybridViewerStore.remoteRender();
119
+ },
120
+ });
121
+
106
122
  const linesEdgeAttributeRange = computed({
107
123
  get: () => dataStyleStore.modelLinesEdgeAttributeRange(modelId, targetLineIds[0]),
108
124
  set: async (newValue) => {
@@ -133,6 +149,14 @@ const vertexAttributeName = computed({
133
149
  },
134
150
  });
135
151
 
152
+ const vertexAttributeItem = computed({
153
+ get: () => dataStyleStore.modelLinesVertexAttributeItem(modelId, lineId),
154
+ set: async (newValue) => {
155
+ await dataStyleStore.setModelLinesVertexAttributeItem(modelId, [lineId], newValue);
156
+ hybridViewerStore.remoteRender();
157
+ },
158
+ });
159
+
136
160
  const vertexAttributeRange = computed({
137
161
  get: () => dataStyleStore.modelLinesVertexAttributeRange(modelId, lineId),
138
162
  set: async (newValue) => {
@@ -162,6 +186,14 @@ const edgeAttributeName = computed({
162
186
  },
163
187
  });
164
188
 
189
+ const edgeAttributeItem = computed({
190
+ get: () => dataStyleStore.modelLinesEdgeAttributeItem(modelId, lineId),
191
+ set: async (newValue) => {
192
+ await dataStyleStore.setModelLinesEdgeAttributeItem(modelId, [lineId], newValue);
193
+ hybridViewerStore.remoteRender();
194
+ },
195
+ });
196
+
165
197
  const edgeAttributeRange = computed({
166
198
  get: () => dataStyleStore.modelLinesEdgeAttributeRange(modelId, lineId),
167
199
  set: async (newValue) => {
@@ -206,9 +238,11 @@ const edgeSchema = back_schemas.opengeodeweb_back.model_component_edge_attribute
206
238
  v-model:coloring_style_key="linesActiveColoring"
207
239
  v-model:color="linesColor"
208
240
  v-model:vertex_attribute_name="linesVertexAttributeName"
241
+ v-model:vertex_attribute_item="linesVertexAttributeItem"
209
242
  v-model:vertex_attribute_range="linesVertexAttributeRange"
210
243
  v-model:vertex_attribute_color_map="linesVertexAttributeColorMap"
211
244
  v-model:edge_attribute_name="linesEdgeAttributeName"
245
+ v-model:edge_attribute_item="linesEdgeAttributeItem"
212
246
  v-model:edge_attribute_range="linesEdgeAttributeRange"
213
247
  v-model:edge_attribute_color_map="linesEdgeAttributeColorMap"
214
248
  :capabilities="capabilities"
@@ -225,9 +259,11 @@ const edgeSchema = back_schemas.opengeodeweb_back.model_component_edge_attribute
225
259
  v-model:coloring_style_key="lineActiveColoring"
226
260
  v-model:color="lineColor"
227
261
  v-model:vertex_attribute_name="vertexAttributeName"
262
+ v-model:vertex_attribute_item="vertexAttributeItem"
228
263
  v-model:vertex_attribute_range="vertexAttributeRange"
229
264
  v-model:vertex_attribute_color_map="vertexAttributeColorMap"
230
265
  v-model:edge_attribute_name="edgeAttributeName"
266
+ v-model:edge_attribute_item="edgeAttributeItem"
231
267
  v-model:edge_attribute_range="edgeAttributeRange"
232
268
  v-model:edge_attribute_color_map="edgeAttributeColorMap"
233
269
  :capabilities="capabilities"
@@ -74,6 +74,14 @@ const surfacesVertexAttributeName = computed({
74
74
  },
75
75
  });
76
76
 
77
+ const surfacesVertexAttributeItem = computed({
78
+ get: () => dataStyleStore.modelSurfacesVertexAttributeItem(modelId, targetSurfaceIds[0]),
79
+ set: async (newValue) => {
80
+ await dataStyleStore.setModelSurfacesVertexAttributeItem(modelId, targetSurfaceIds, newValue);
81
+ hybridViewerStore.remoteRender();
82
+ },
83
+ });
84
+
77
85
  const surfacesVertexAttributeRange = computed({
78
86
  get: () => dataStyleStore.modelSurfacesVertexAttributeRange(modelId, targetSurfaceIds[0]),
79
87
  set: async (newValue) => {
@@ -107,6 +115,14 @@ const surfacesPolygonAttributeName = computed({
107
115
  },
108
116
  });
109
117
 
118
+ const surfacesPolygonAttributeItem = computed({
119
+ get: () => dataStyleStore.modelSurfacesPolygonAttributeItem(modelId, targetSurfaceIds[0]),
120
+ set: async (newValue) => {
121
+ await dataStyleStore.setModelSurfacesPolygonAttributeItem(modelId, targetSurfaceIds, newValue);
122
+ hybridViewerStore.remoteRender();
123
+ },
124
+ });
125
+
110
126
  const surfacesPolygonAttributeRange = computed({
111
127
  get: () => dataStyleStore.modelSurfacesPolygonAttributeRange(modelId, targetSurfaceIds[0]),
112
128
  set: async (newValue) => {
@@ -141,6 +157,14 @@ const vertexAttributeName = computed({
141
157
  },
142
158
  });
143
159
 
160
+ const vertexAttributeItem = computed({
161
+ get: () => dataStyleStore.modelSurfacesVertexAttributeItem(modelId, surfaceId),
162
+ set: async (newValue) => {
163
+ await dataStyleStore.setModelSurfacesVertexAttributeItem(modelId, [surfaceId], newValue);
164
+ hybridViewerStore.remoteRender();
165
+ },
166
+ });
167
+
144
168
  const vertexAttributeRange = computed({
145
169
  get: () => dataStyleStore.modelSurfacesVertexAttributeRange(modelId, surfaceId),
146
170
  set: async (newValue) => {
@@ -170,6 +194,14 @@ const polygonAttributeName = computed({
170
194
  },
171
195
  });
172
196
 
197
+ const polygonAttributeItem = computed({
198
+ get: () => dataStyleStore.modelSurfacesPolygonAttributeItem(modelId, surfaceId),
199
+ set: async (newValue) => {
200
+ await dataStyleStore.setModelSurfacesPolygonAttributeItem(modelId, [surfaceId], newValue);
201
+ hybridViewerStore.remoteRender();
202
+ },
203
+ });
204
+
173
205
  const polygonAttributeRange = computed({
174
206
  get: () => dataStyleStore.modelSurfacesPolygonAttributeRange(modelId, surfaceId),
175
207
  set: async (newValue) => {
@@ -214,9 +246,11 @@ const polygonSchema = back_schemas.opengeodeweb_back.model_component_polygon_att
214
246
  v-model:coloring_style_key="surfacesActiveColoring"
215
247
  v-model:color="surfacesColor"
216
248
  v-model:vertex_attribute_name="surfacesVertexAttributeName"
249
+ v-model:vertex_attribute_item="surfacesVertexAttributeItem"
217
250
  v-model:vertex_attribute_range="surfacesVertexAttributeRange"
218
251
  v-model:vertex_attribute_color_map="surfacesVertexAttributeColorMap"
219
252
  v-model:polygon_attribute_name="surfacesPolygonAttributeName"
253
+ v-model:polygon_attribute_item="surfacesPolygonAttributeItem"
220
254
  v-model:polygon_attribute_range="surfacesPolygonAttributeRange"
221
255
  v-model:polygon_attribute_color_map="surfacesPolygonAttributeColorMap"
222
256
  :capabilities="capabilities"
@@ -233,9 +267,11 @@ const polygonSchema = back_schemas.opengeodeweb_back.model_component_polygon_att
233
267
  v-model:coloring_style_key="surfaceActiveColoring"
234
268
  v-model:color="surfaceColor"
235
269
  v-model:vertex_attribute_name="vertexAttributeName"
270
+ v-model:vertex_attribute_item="vertexAttributeItem"
236
271
  v-model:vertex_attribute_range="vertexAttributeRange"
237
272
  v-model:vertex_attribute_color_map="vertexAttributeColorMap"
238
273
  v-model:polygon_attribute_name="polygonAttributeName"
274
+ v-model:polygon_attribute_item="polygonAttributeItem"
239
275
  v-model:polygon_attribute_range="polygonAttributeRange"
240
276
  v-model:polygon_attribute_color_map="polygonAttributeColorMap"
241
277
  :capabilities="capabilities"