protected void onMouseDown(NodeMouseDownEvent event) { m_start = new Point2D(event.getX(), event.getY()); m_dragging = true; m_dragLayer = m_viewport.getDraglayer(); Transform transform = m_dragLayer.isTransformable() ? m_viewport.getTransform() : m_dragLayer.getTransform(); if (transform == null) { transform = new Transform(); } m_rectangle.setStrokeWidth(1 / transform.getScaleX()); m_inverseTransform = transform.getInverse(); m_inverseTransform.transform(m_start, m_start); m_addedRectangle = false; }