(&mut self, device: &Device, queue: &Queue, state: &PlotState)
| 1109 | if recreate { |
| 1110 | self.buffers.markers = Some(VertexBuffer { |
| 1111 | buffer: device.create_buffer(&BufferDescriptor { |
| 1112 | label: Some("marker vb"), |
| 1113 | size: needed.max(2048), |
| 1114 | usage: BufferUsages::VERTEX | BufferUsages::COPY_DST, |
| 1115 | mapped_at_creation: false, |
| 1116 | }), |
| 1117 | vertex_count: marker_series_count as u32, |
| 1118 | }); |
| 1119 | } else if let Some(vb) = &mut self.buffers.markers { |
| 1120 | vb.vertex_count = marker_series_count as u32; |
| 1121 | } |
| 1122 | |
| 1123 | if let Some(vb) = &self.buffers.markers { |
| 1124 | queue.write_buffer(&vb.buffer, 0, data); |
| 1125 | } |
| 1126 | |
| 1127 | // Update picking id map |
| 1128 | self.picking.set_id_map(id_map); |
| 1129 | } |
| 1130 | |
| 1131 | fn rebuild_fills(&mut self, device: &Device, queue: &Queue, state: &PlotState) { |
| 1132 | self.buffers.fills = None; |
| 1133 | if state.fills.is_empty() { |
| 1134 | return; |
| 1135 | } |
| 1136 | |
| 1137 | let mut writer = VertexWriter::new(); |
| 1138 | for fill in state.fills.iter() { |
| 1139 | for world_pos in fill.vertices.iter() { |
| 1140 | let render_pos = self.world_to_render_pos(*world_pos, &state.camera); |
| 1141 | writer.write_position(render_pos); |
| 1142 | writer.write_color(&fill.color); |
| 1143 | } |
| 1144 | } |
| 1145 | |
| 1146 | if writer.is_empty() { |
| 1147 | return; |
no test coverage detected