张世豪
22 小时以前 6c9349bd065a99bf2066b6ae3f09691270720c9b
src/zhuye/pointandnumber.java
@@ -34,9 +34,14 @@
        }
    double scaleFactor = Math.max(0.5, scale); // 防止过小缩放
    double clampedScale = diameterScale > 0 ? diameterScale : 1.0; // 防止非法缩放
    double minimumDiameter = clampedScale < 1.0 ? 0.5 : 1.0; // 缩小时允许更小的最小值
    double markerDiameter = Math.max(minimumDiameter, (10.0 / scaleFactor) * 0.2 * clampedScale); // 描点直径
    // 边界线宽度:3 / Math.max(0.5, scale)
    // 边界点直径 = 边界线宽度的2倍
    double boundaryLineWidth = 3.0 / scaleFactor; // 边界线宽度
    double markerDiameter = boundaryLineWidth * 2.0; // 描点直径(边界线宽度的2倍)
    // 应用直径缩放因子
    if (diameterScale > 0.0 && Double.isFinite(diameterScale)) {
        markerDiameter *= diameterScale;
    }
        double markerRadius = markerDiameter / 2.0; // 半径
        for (int i = 0; i < effectiveCount; i++) { // 遍历有效点