MCPcopy Index your code
hub / github.com/bqplot/bqplot / updateRadius

Method updateRadius

js/src/Pie.ts:215–276  ·  view source on GitHub ↗
(animate?: boolean)

Source from the content-addressed store, hash-verified

213 }
214
215 private updateRadius(animate?: boolean) {
216 const animation_duration =
217 animate === true ? this.parent.model.get('animation_duration') : 0;
218
219 const radius = this.model.get('radius');
220 const inner_radius = this.model.get('inner_radius');
221 const display_labels = this.model.get('display_labels');
222
223 if (display_labels === 'inside') {
224 this.arc.outerRadius(radius).innerRadius(inner_radius);
225 } else if (display_labels === 'outside') {
226 this.arc.outerRadius(radius * 0.8).innerRadius(inner_radius * 0.8);
227 this.outerArc.innerRadius(radius * 0.9).outerRadius(radius * 0.9);
228 }
229
230 const slices = this.pieSelection.select('.slices');
231 const labels = this.pieSelection.select('.labels');
232 const lines = this.pieSelection.select('.lines');
233
234 const that = this;
235
236 slices
237 .selectAll('.slice')
238 .transition('update_radius')
239 .duration(animation_duration)
240 .attr('d', this.arc);
241
242 if (display_labels === 'inside') {
243 labels
244 .selectAll('text')
245 .transition('update_radius')
246 .duration(animation_duration)
247 .attr('transform', (d: d3.DefaultArcObject) => {
248 return 'translate(' + that.arc.centroid(d) + ')';
249 });
250 } else if (display_labels === 'outside') {
251 labels
252 .selectAll('text')
253 .transition('update_radius')
254 .duration(animation_duration)
255 .attr('transform', (d: d3.DefaultArcObject) => {
256 const pos = that.outerArc.centroid(d);
257 pos[0] = radius * (that.midAngleLocation(d) === 'left' ? -1 : 1);
258 return 'translate(' + pos + ')';
259 });
260
261 lines
262 .selectAll('polyline')
263 .transition('update_radius')
264 .duration(animation_duration)
265 .attr('points', (d: d3.DefaultArcObject) => {
266 const pos = that.outerArc.centroid(d);
267 pos[0] =
268 radius * 0.95 * (that.midAngleLocation(d) === 'left' ? -1 : 1);
269 return [
270 that.arc.centroid(d),
271 that.outerArc.centroid(d),
272 pos,

Callers 2

create_listenersMethod · 0.95
relayoutMethod · 0.95

Calls 1

midAngleLocationMethod · 0.80

Tested by

no test coverage detected