diff --git a/toonz/sources/tnztools/toonzvectorbrushtool.cpp b/toonz/sources/tnztools/toonzvectorbrushtool.cpp
index cc70f9c..d443834 100644
--- a/toonz/sources/tnztools/toonzvectorbrushtool.cpp
+++ b/toonz/sources/tnztools/toonzvectorbrushtool.cpp
@@ -506,19 +506,26 @@ ToonzVectorBrushTool::ToonzVectorBrushTool(std::string name, int targetType)
     , m_capStyle("Cap")
     , m_joinStyle("Join")
     , m_miterJoinLimit("Miter:", 0, 100, 4)
-    , m_rasterTrack(0)
-    , m_styleId(0)
+    , m_firstStroke()
+    , m_styleId()
+    , m_minThick()
+    , m_maxThick()
+    , m_col()
+    , m_firstFrame()
+    , m_veryFirstFrame()
+    , m_veryFirstCol()
     , m_targetType(targetType)
+    , m_pixelSize()
+    , m_minDistance2()
     , m_snapped()
     , m_snappedSelf()
-    , m_modifiedRegion()
-    , m_bluredBrush(0)
-    , m_active(false)
-    , m_isPrompting(false)
+    , m_active()
+    , m_isPrompting()
     , m_firstTime(true)
-    , m_presetsLoaded(false)
+    , m_isPath()
+    , m_presetsLoaded()
     , m_firstFrameRange(true)
-    , m_workingFrameId(TFrameId())
+    , m_propertyUpdating()
 {
   bind(targetType);
 
@@ -657,11 +664,7 @@ void ToonzVectorBrushTool::onDeactivate() {
    * ---*/
 
   // End current stroke.
-  if (m_active)
-    leftButtonUp(m_lastDragPos, m_lastDragEvent);
-  
-  m_workRas   = TRaster32P();
-  m_backupRas = TRasterCM32P();
+  m_inputmanager.finishTracks();
   resetFrameRange();
 }
 
@@ -1298,30 +1301,6 @@ bool ToonzVectorBrushTool::doGuidedAutoInbetween(
 
 //--------------------------------------------------------------------------------------------------
 
-void ToonzVectorBrushTool::addTrackPoint(const TThickPoint &point,
-                                         double pixelSize2) {
-  m_smoothStroke.addPoint(point);
-  std::vector<TThickPoint> pts;
-  m_smoothStroke.getSmoothPoints(pts);
-  for (size_t i = 0; i < pts.size(); ++i) {
-    m_track.add(pts[i], pixelSize2);
-  }
-}
-
-//--------------------------------------------------------------------------------------------------
-
-void ToonzVectorBrushTool::flushTrackPoint() {
-  m_smoothStroke.endStroke();
-  std::vector<TThickPoint> pts;
-  m_smoothStroke.getSmoothPoints(pts);
-  double pixelSize2 = getPixelSize() * getPixelSize();
-  for (size_t i = 0; i < pts.size(); ++i) {
-    m_track.add(pts[i], pixelSize2);
-  }
-}
-
-//-------------------------------------------------------------------------------------------------------------
-
 void ToonzVectorBrushTool::snap(const TPointD &pos, bool snapEnabled, bool withSelfSnap) {
   bool oldSnapped      = m_snapped;
   bool oldSnappedSelf  = m_snappedSelf;
@@ -1389,7 +1368,7 @@ void ToonzVectorBrushTool::snap(const TPointD &pos, bool snapEnabled, bool withS
       if (withSelfSnap && !m_track.isEmpty()) {
         TPointD p = m_track.getFirstPoint();
         double d2 = tdistance2(pos, p);
-        if (d2 < m_minDistance2) {
+        if (d2 < minDistance2) {
           m_snappedSelf = true;
           m_snapPointSelf = p;
         }
@@ -1451,13 +1430,11 @@ void ToonzVectorBrushTool::draw() {
     glColor3d(1.0, 0.0, 0.0);
     m_rangeTrack.drawAllFragments();
     glColor3d(0.0, 0.6, 0.0);
-    TPointD firstPoint        = m_rangeTrack.getFirstPoint();
-    TPointD topLeftCorner     = TPointD(firstPoint.x - 5, firstPoint.y - 5);
-    TPointD topRightCorner    = TPointD(firstPoint.x + 5, firstPoint.y - 5);
-    TPointD bottomLeftCorner  = TPointD(firstPoint.x - 5, firstPoint.y + 5);
-    TPointD bottomRightCorner = TPointD(firstPoint.x + 5, firstPoint.y + 5);
-    tglDrawSegment(topLeftCorner, bottomRightCorner);
-    tglDrawSegment(topRightCorner, bottomLeftCorner);
+    TPointD offset1 = TPointD(5, 5);
+    TPointD offset2 = TPointD(-offset1.x, offset1.y);
+    TPointD point = m_rangeTrack.getFirstPoint();
+    tglDrawSegment(point - offset1, point + offset1);
+    tglDrawSegment(point - offset2, point + offset2);
   }
 
   if (getApplication()->getCurrentObject()->isSpline()) return;
diff --git a/toonz/sources/tnztools/toonzvectorbrushtool.h b/toonz/sources/tnztools/toonzvectorbrushtool.h
index 6b64f7a..09084dc 100644
--- a/toonz/sources/tnztools/toonzvectorbrushtool.h
+++ b/toonz/sources/tnztools/toonzvectorbrushtool.h
@@ -148,8 +148,6 @@ public:
   // Tools.
   bool isPencilModeActive() override;
 
-  void addTrackPoint(const TThickPoint &point, double pixelSize2);
-  void flushTrackPoint();
   bool doFrameRangeStrokes(TFrameId firstFrameId, TStroke *firstStroke,
                            TFrameId lastFrameId, TStroke *lastStroke,
                            int interpolationType, bool breakAngles,
@@ -198,10 +196,7 @@ protected:
 
   StrokeGenerator m_track;
   StrokeGenerator m_rangeTrack;
-  RasterStrokeGenerator *m_rasterTrack;
   TStroke *m_firstStroke;
-  TTileSetCM32 *m_tileSet;
-  TTileSaverCM32 *m_tileSaver;
   TFrameId m_firstFrameId, m_veryFirstFrameId;
   TPixel32 m_currentColor;
   int m_styleId; // bwtodo: remove
@@ -210,31 +205,15 @@ protected:
   // for snapping and framerange
   int m_col, m_firstFrame, m_veryFirstFrame,
       m_veryFirstCol, m_targetType;
-  double m_pixelSize, m_currThickness, m_minDistance2;
+  double m_pixelSize, m_minDistance2;
   
-  bool m_snapped; // bwtodo: init
+  bool m_snapped;
   bool m_snappedSelf;
   TPointD m_snapPoint;
   TPointD m_snapPointSelf;
   
-  bool m_foundFirstSnap = false, m_foundLastSnap = false, m_dragDraw = true,
-       m_altPressed = false, m_snapSelf = false;
-  TRectD m_modifiedRegion;
-  TPointD m_dpiScale,
-      m_mousePos,  //!< Current mouse position, in world coordinates.
-      m_brushPos,  //!< World position the brush will be painted at.
-      m_firstSnapPoint, m_lastSnapPoint;
-
-  BluredBrush *m_bluredBrush;
-  QRadialGradient m_brushPad;
-
-  TRasterCM32P m_backupRas;
-  TRaster32P m_workRas;
-
-  std::vector<TThickPoint> m_points;
-  TRect m_strokeRect, m_lastRect;
-
-  SmoothStroke m_smoothStroke;
+  TPointD m_mousePos;  //!< Current mouse position, in world coordinates.
+  TPointD m_brushPos;  //!< World position the brush will be painted at.
 
   VectorBrushPresetManager
       m_presetsManager;  //!< Manager for presets of this tool instance
@@ -244,15 +223,7 @@ protected:
                       //! substitution.
       m_firstTime, m_isPath, m_presetsLoaded, m_firstFrameRange;
 
-  /*---
-  ��ƒ���FrameId���N���b�N���ɕۑ����A�}�E�X�����[�X���iUndo�̓o�^���j�ɕʂ̃t���[����
-  �ړ����Ă����Ƃ��̕s����C������B---*/
-  TFrameId m_workingFrameId;
-
-  TPointD m_lastDragPos;        //!< Position where mouse was last dragged.
-  TMouseEvent m_lastDragEvent;  //!< Previous mouse-drag event.
-
-  bool m_propertyUpdating = false;
+  bool m_propertyUpdating;
 };
 
 #endif  // TOONZVECTORBRUSHTOOL_H