找回密码
 快速注册
搜索
查看: 36|回复: 0

fit picture

[复制链接]

3149

主题

8386

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65391
QQ

显示全部楼层

hbghlyj 发表于 2023-3-5 05:08 |阅读模式
右边的竖线被南移了一点, 这是由add(pic2,pic.fit(),(1/4,0),N);引起的, 因为align参数N是放在北边
unitsize(4cm);
picture pic;unitsize(pic,4cm);
pair A = (0,0);
pair B = (1/2,0);
pair C = (1/2,1);
pair D = (0,1);
fill(pic,box(A,C),lightgray);
draw(pic,A--B,blue,MidArrow);
draw(pic,C--D,blue,MidArrow);
picture pic2;unitsize(pic2,4cm);
add(pic2,pic.fit(),(1/4,0),N);
draw(pic,D--A,red,MidArrow);
draw(pic2,C--B,red,MidArrow);
add(pic.fit(),(0,0),E);
add(pic2.fit(),(1,0),E);

如果改成add(pic2,pic.fit(),(0,1/2),E);, 放在东边, 发现右边的竖线被西移了一点
unitsize(4cm);
picture pic;unitsize(pic,4cm);
pair A = (0,0);
pair B = (1/2,0);
pair C = (1/2,1);
pair D = (0,1);
fill(pic,box(A,C),lightgray);
draw(pic,A--B,blue,MidArrow);
draw(pic,C--D,blue,MidArrow);
picture pic2;unitsize(pic2,4cm);
add(pic2,pic.fit(),(0,1/2),E);
draw(pic,D--A,red,MidArrow);
draw(pic2,C--B,red,MidArrow);
add(pic.fit(),(0,0),E);
add(pic2.fit(),(1,0),E);

如果改成 居中对齐add(pic2,pic.fit(),(1/4,1/2),(0,0)); 就没有问题了:
unitsize(4cm);
picture pic;unitsize(pic,4cm);
pair A = (0,0);
pair B = (1/2,0);
pair C = (1/2,1);
pair D = (0,1);
fill(pic,box(A,C),lightgray);
draw(pic,A--B,blue,MidArrow);
draw(pic,C--D,blue,MidArrow);
picture pic2;unitsize(pic2,4cm);
add(pic2,pic.fit(),(1/4,1/2),(0,0));
draw(pic,D--A,red,MidArrow);
draw(pic2,C--B,red,MidArrow);
add(pic.fit(),(0,0),E);
add(pic2.fit(),(1,0),E);

另外需注意: 源picture和目标picture应设定相同的unitsize防止被重新缩放.
设定相同的size不能防止被重新缩放.
若将unitsize改为size就都乱套了:
size(4cm);
picture pic;size(pic,4cm);
pair A = (0,0);
pair B = (1/2,0);
pair C = (1/2,1);
pair D = (0,1);
fill(pic,box(A,C),lightgray);
draw(pic,A--B,blue,MidArrow);
draw(pic,C--D,blue,MidArrow);
picture pic2;size(pic2,4cm);
add(pic2,pic.fit(),(1/4,0),N);
draw(pic,D--A,red,MidArrow);
draw(pic2,C--B,red,MidArrow);
add(pic.fit(),(0,0),E);
add(pic2.fit(),(1,0),E);


Related
6.5 Frames and pictures
How can I have Asymptote rescale a drawing automatically to fit a width

手机版|悠闲数学娱乐论坛(第3版)

GMT+8, 2025-3-4 12:14

Powered by Discuz!

× 快速回复 返回顶部 返回列表