HOME > > Asymptote < > Asymptote <∵

Asymptote <∵

path 蕋∽

吾牙с祉違<潟篏潟t 0 1 障у篏潟ゃ障祉違<潟綏劻若祉違<潟潟潟若ゃ潟違 t 筝祉違<潟筝筝鴻劫с

鐚t 違http://ja.wikipedia.org/wiki/%E3%83%99%E3%82%B8%E3%82%A7%E6%9B%B2%E7%B7%9A 篏恰с荀鐚

asymptote path ∽違сpath 筝筝鴻劫 t ≦宍 path time 紊違篏帥絎違с違path time 7.3 с違7 ょ若 8 ょ若障祉違<潟筝t=0.3 鴻緇桁сpath time 8 贋違с違< 9 若

int length(path) 祉違<潟違菴
int size(path) 若違菴
pair point(path p, int n) n 若菴
pair point(path p, real u) u 7.3 筝7 若 8 若祉違<潟筝t=0.3 鴻緇t 吾牙ゃ 0 篁ヤ 1 篁ヤу≪с潟吟u 贋違∽違腟

point ∽違∝純с絨с帥

picture1 綣ссpicture2 сt 0 10 膀蚊у紊сpicture1 с鴻 p(t) c膈picture2 翫膈

pair dir(path, int n); n 若・膩劫ゅ篏菴鴻劫綵演帥
pair dir(path, real u) path time u х劫鴻с・膩劫篏菴鴻劫綵演帥

unitcircle path time = 1.5 贋ф・√違吾帥

size(5cm);
path mypath = unitcircle;
pair mypnt=point(mypath, 1.5);
pair mydir=dir(mypath, 1.5);
draw(mypath);
draw(mypnt--mypnt+mydir, arrow=EndArrow);

pair precontrol(path, int n) n 若祉潟潟若祉ゃ潟菴
pair precontrol(path, real u) u 7.3 筝7 若 8 若祉違<潟筝t=0.3 鴻緇若菴遵翫綽荀祉潟潟若祉ゃ潟菴t 吾牙ゃ 0 篁ヤ 1 篁ヤу≪с
pair postcontrol(path, int n) 篋罧灸腓冴∽違鴻祉潟潟若祉ゃ潟
pair postcontrol(path, real u) 篋罧灸腓冴∽違鴻祉潟潟若祉ゃ潟

unitcircle 潟潟若祉ゃ潟茵腓冴帥

size(5cm);
path mypath=unitcircle;
draw(mypath);
for(int i=0; i < size(mypath); ++i) {
  pair nod=point(mypath, i);
  dot(nod, red);
  pair prec=precontrol(mypath, i);
  pair posc=postcontrol(mypath, i);
  dot(prec, blue);
  dot(posc, blue);
  draw(nod--prec, blue);
  draw(nod--posc, blue);
}

arclength(path) 鴻羃帥c羝c劫篏激picture 泣ゃ冴綵演帥
real arctime(path, real L) 紮鴻鴻羃帥c羝c鐚picture 泣ゃ冴綵演帥鐚激L 鴻path time ц
real dirtime(path, pair z) z хず劫雁 path ・鴻 path time ц

篏 unitcircle 障 (1,1) ・膩綣帥dirtime 篏帥(1,1) 劫ょ雁 unitcircle ・ t 緇 t point 篏帥c・鴻緇帥

size(5cm);
pair mydir=(1,1);
path mypath=unitcircle;
real mytime=dirtime(mypath,mydir);
pair mypoint=point(mypath,mytime);
draw(unitcircle);
dot(mypoint);
draw(shift(mypoint)*rotate(mydir)*(W--E),red);

path reverse(path p) 劫荵≪鴻菴
path subpath(path p, int n, int m) n 若 m 若潟泣鴻菴n > m 翫劫荵≪泣鴻菴
path subpath(path p, real a, real b) 筝∽違 path time
pair intersect(path p, path q, real fuzz=0) p q 篋ょ q q path time p path time 菴fuzz 荐怨鴻茯ゅ勲с 0 潟潟ャ若帥茯ゅ勲篏帥篋ょ鴻 (-1,-1) 菴
pair intersectionpoint(path p, path q, real fuzz=0) p q 篋ょ鴻茯ゅ勲 fuzz 障ф菴point(p,intersect(p,q,fuzz).x)
slice firstcut(path p, path q) p q 篋ょ鴻羆 p 紮鴻篋ょ鴻障с泣鴻潟篋ょ鴻 p 腟鴻障с篋ゃ泣鴻菴祉ゃ罕篏 slice slice s=firstcut(unitcircle, unitsquare); 違s.before т困鴻泣鴻s.after т困鴻緇泣鴻緇
slice lastcut(path p, path q) 筝∽違緇篋ょ鴻

30 綺 90 綺障с綣с帥

path mypath=unitcircle;

path buildcycle(... path[] g) 茲違鴻蚊障菴<ゃ違c篏腆肴с
pair min(path) 鴻傑劫就綏筝綺ф菴
pair max(path) 鴻傑劫就劽綺ф菴
bool cyclic(path)
bool straight(path, int i) 若 i 若 i+1 祉違<潟g眼с
bool inside(path g, pair z, pen p=currentpen) c若c z g 眼

罨≠
HOME


紕膣
薤藕

茯絖
沿
ユ茯


遵医