示例#1
0
/* set sample from accumulated values */
static void depthdropper_depth_set_accum(bContext *C, DepthDropper *ddr)
{
	float depth = ddr->accum_depth;
	if (ddr->accum_tot) {
		depth /= (float)ddr->accum_tot;
	}
	depthdropper_depth_set(C, ddr, depth);
}
示例#2
0
/* single point sample & set */
static void depthdropper_depth_sample(bContext *C, DepthDropper *ddr, int mx, int my)
{
	float depth = -1.0f;
	if (depth != -1.0f) {
		depthdropper_depth_sample_pt(C, ddr, mx, my, &depth);
		depthdropper_depth_set(C, ddr, depth);
	}
}
static void depthdropper_cancel(bContext *C, wmOperator *op)
{
  DepthDropper *ddr = op->customdata;
  if (ddr->is_set) {
    depthdropper_depth_set(C, ddr, ddr->init_depth);
  }
  depthdropper_exit(C, op);
}