def update_grid(self): """ Update the grid axes and numbers if the camera position/rotation has changed. """ # Obtain the new camera settings new_camera_pos = vector(self.__scene.camera.pos) new_camera_axes = vector(self.__scene.camera.axis) old_camera_pos = vector(self.camera_pos) old_camera_axes = vector(self.camera_axes) # Update old positions self.camera_pos = new_camera_pos self.camera_axes = new_camera_axes distance_from_center = mag(self.__scene.center - self.__scene.camera.pos) new_scale = round(distance_from_center / 30.0, 1) if not new_scale == self.__scale: self.set_scale(new_scale) # If camera is different to previous: update if (not new_camera_axes.equals(old_camera_axes)) or ( not new_camera_pos.equals(old_camera_pos)): # Update grid self.__move_grid_objects() update_grid_numbers(self.__focal_point, self.grid_object[self.__labels_idx], self.__num_squares, self.__scale, self.__is_3d, self.__scene)
def __init_grid(self): """ Initialise the grid along the x, y, z axes. """ the_grid = self.__create_grid_objects() self.grid_object[self.__planes_idx] = the_grid # Update the labels instead of recreating them update_grid_numbers(self.grid_object[self.__labels_idx], self.__relative_cam, self.__num_squares, self.__scene)
def update_grid(self): """ Update the grid axes and numbers if the camera position/rotation has changed. """ # Obtain the new camera settings new_camera_pos = self.__scene.camera.pos new_camera_axes = self.__scene.camera.axis old_camera_pos = self.camera_pos old_camera_axes = self.camera_axes # If camera is different to previous: update if (not new_camera_axes.equals(old_camera_axes)) or ( not new_camera_pos.equals(old_camera_pos)): # Update old positions self.camera_pos = new_camera_pos self.camera_axes = new_camera_axes # Update grid self.__move_grid_objects() update_grid_numbers(self.__focal_point, self.grid_object[self.__labels_idx], self.__num_squares, self.__scene)