better wire connection dot sizing at small smap values
This commit is contained in:
parent
1991b409e0
commit
ccc5dab228
|
|
@ -2347,7 +2347,7 @@ void zoom_full(int dr, int sel, int flags, double shrink)
|
||||||
xRect boundbox;
|
xRect boundbox;
|
||||||
double yzoom;
|
double yzoom;
|
||||||
double bboxw, bboxh, schw, schh;
|
double bboxw, bboxh, schw, schh;
|
||||||
|
double cs = tclgetdoublevar("cadsnap");
|
||||||
if(flags & 1) {
|
if(flags & 1) {
|
||||||
if(tclgetboolvar("change_lw")) {
|
if(tclgetboolvar("change_lw")) {
|
||||||
xctx->lw = 1.;
|
xctx->lw = 1.;
|
||||||
|
|
@ -2370,8 +2370,6 @@ void zoom_full(int dr, int sel, int flags, double shrink)
|
||||||
yzoom = bboxh / schh;
|
yzoom = bboxh / schh;
|
||||||
if(yzoom > xctx->zoom) xctx->zoom = yzoom;
|
if(yzoom > xctx->zoom) xctx->zoom = yzoom;
|
||||||
xctx->zoom /= shrink;
|
xctx->zoom /= shrink;
|
||||||
/* we do this here since change_linewidth may not be called if flags & 1 == 0*/
|
|
||||||
cadhalfdotsize = CADHALFDOTSIZE + 0.04 * (tclgetdoublevar("cadsnap")-10);
|
|
||||||
|
|
||||||
xctx->mooz = 1 / xctx->zoom;
|
xctx->mooz = 1 / xctx->zoom;
|
||||||
if(flags & 2) {
|
if(flags & 2) {
|
||||||
|
|
@ -2383,6 +2381,9 @@ void zoom_full(int dr, int sel, int flags, double shrink)
|
||||||
}
|
}
|
||||||
dbg(1, "zoom_full(): dr=%d sel=%d flags=%d areaw=%d, areah=%d\n", sel, dr, flags, xctx->areaw, xctx->areah);
|
dbg(1, "zoom_full(): dr=%d sel=%d flags=%d areaw=%d, areah=%d\n", sel, dr, flags, xctx->areaw, xctx->areah);
|
||||||
if(flags & 1) change_linewidth(-1.);
|
if(flags & 1) change_linewidth(-1.);
|
||||||
|
/* we do this here since change_linewidth may not be called if flags & 1 == 0*/
|
||||||
|
/* cadhalfdotsize = CADHALFDOTSIZE + 0.04 * (tclgetdoublevar("cadsnap")-10); */
|
||||||
|
cadhalfdotsize = 4.0 * (cs < 10. ? cs : 10.) / 10.;
|
||||||
if(dr && has_x) {
|
if(dr && has_x) {
|
||||||
draw();
|
draw();
|
||||||
redraw_w_a_l_r_p_rubbers();
|
redraw_w_a_l_r_p_rubbers();
|
||||||
|
|
|
||||||
|
|
@ -1959,11 +1959,11 @@ void change_linewidth(double w)
|
||||||
/* choose line width automatically based on zoom */
|
/* choose line width automatically based on zoom */
|
||||||
dbg(1, "change_linewidth(): w = %g, win_path=%s lw=%g\n", w, xctx->current_win_path, xctx->lw);
|
dbg(1, "change_linewidth(): w = %g, win_path=%s lw=%g\n", w, xctx->current_win_path, xctx->lw);
|
||||||
if(w<0. || xctx->lw == -1.0) {
|
if(w<0. || xctx->lw == -1.0) {
|
||||||
double cs;
|
double cs = tclgetdoublevar("cadsnap");
|
||||||
cs = tclgetdoublevar("cadsnap");
|
|
||||||
if(tclgetboolvar("change_lw")) {
|
if(tclgetboolvar("change_lw")) {
|
||||||
xctx->lw=xctx->mooz * 0.09 * cs;
|
xctx->lw=xctx->mooz * 0.09 * cs;
|
||||||
cadhalfdotsize = CADHALFDOTSIZE + 0.04 * (cs-10);
|
cadhalfdotsize = CADHALFDOTSIZE * (cs < 10. ? cs : 10.) / 10.;
|
||||||
|
/* cadhalfdotsize = CADHALFDOTSIZE + 0.04 * (cs-10); */
|
||||||
}
|
}
|
||||||
/* explicitly set line width */
|
/* explicitly set line width */
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -163,7 +163,7 @@ extern char win_temp_dir[PATH_MAX];
|
||||||
#define CADMOVESTEP 200
|
#define CADMOVESTEP 200
|
||||||
#define CADMAXZOOM 1000000.0
|
#define CADMAXZOOM 1000000.0
|
||||||
#define CADMINZOOM 0.000001
|
#define CADMINZOOM 0.000001
|
||||||
#define CADHALFDOTSIZE 4
|
#define CADHALFDOTSIZE 3.7
|
||||||
#define CADNULLNODE -1 /* no valid node number */
|
#define CADNULLNODE -1 /* no valid node number */
|
||||||
#define CADWIREMINDIST 8.0
|
#define CADWIREMINDIST 8.0
|
||||||
#define CADMAXWIRES 200
|
#define CADMAXWIRES 200
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue