private CylinderPlaceArgs ConstructCylinderPlaceArgs(CylinderController currentCylinder, PlaceResult placeResult)
        {
            CylinderPlaceArgs placeArgs = new CylinderPlaceArgs
            {
                Cylinder    = currentCylinder,
                PlaceResult = placeResult
            };

            return(placeArgs);
        }
        public CylinderPlaceArgs StopPlacingCylinder()
        {
            if (_currentCylinder == null)
            {
                return(null);
            }

            CylinderController currentCylinder = _currentCylinder;

            UnstoreCylinder();
            PlaceResult       placeResult = GetPlaceResultByCylinderScale(currentCylinder);
            CylinderPlaceArgs placeArgs   = ConstructCylinderPlaceArgs(currentCylinder, placeResult);

            return(placeArgs);
        }