| 38 | } |
| 39 | |
| 40 | void GridModifyTool::set_grid(const NetObjWeakPtr<WorldGrid>& newGrid) { |
| 41 | grid = newGrid; |
| 42 | NetworkingObjects::NetObjTemporaryPtr<WorldGrid> gLock = grid.lock(); |
| 43 | if(gLock) { |
| 44 | WorldGrid& g = *gLock; |
| 45 | oldGrid = g; |
| 46 | CoordSpaceHelper newCam; |
| 47 | newCam.inverseScale = g.size / WorldScalar(WorldGrid::GRID_UNIT_PIXEL_SIZE); |
| 48 | newCam.inverseScale = newCam.inverseScale.divide_double(drawP.world.main.g.final_gui_scale()); |
| 49 | newCam.pos = g.offset - drawP.world.main.window.size.cast<WorldScalar>() * newCam.inverseScale * WorldScalar(0.5); |
| 50 | newCam.rotation = 0.0; |
| 51 | drawP.world.drawData.cam.smooth_move_to(drawP.world, newCam, drawP.world.main.window.size.cast<float>()); |
| 52 | } |
| 53 | } |
| 54 | |
| 55 | DrawingProgramToolType GridModifyTool::get_type() { |
| 56 | return DrawingProgramToolType::GRIDMODIFY; |
no test coverage detected