我想从渐近线包构建图像,但是当我输入
asy File-1.asy
它给了我这个
pic.addBox(position,position,min(f),max(f));
我该如何解决这个问题?
我的 asy 版本是
ENABLED OPTIONS:
WebGL 3D HTML rendering
OpenGL 3D OpenGL rendering
CURL URL support
DISABLED OPTIONS:
DISABLED OPTIONS:
V3D 3D vector graphics output
SSBO GLSL shader storage buffer objects
GSL GNU Scientific Library (special functions)
FFTW3 Fast Fourier transforms
Eigen Eigenvalue library
XDR External Data Representation (portable binary file format for V3D)
LSP Language Server Protocol
Readline Interactive history and editing
Editline interactive editing (if Readline is unavailable)
Sigsegv Distinguish stack overflows from segmentation faults
GC Boehm garbage collector
threads Render OpenGL in separate thread
而我的 File-1.asy 看起来像这样
if(!settings.multipleView) settings.batchView=false;
defaultfilename="File-1";
if(settings.render < 0) settings.render=4;
settings.outformat="";
settings.inlineimage=true;
settings.embed=true;
settings.toolbar=false;
viewportmargin=(2,2);
defaultpen(fontsize(10pt));
size(8cm); // set a reasonable default
usepackage("amsmath");
usepackage("amssymb");
settings.tex="pdflatex";
settings.outformat="pdf";
// Replacement for olympiad+cse5 which is not standard
import geometry;
// recalibrate fill and filldraw for conics
void filldraw(picture pic = currentpicture, conic g, pen fillpen=defaultpen, pen drawpen=defaultpen)
{ filldraw(pic, (path) g, fillpen, drawpen); }
void fill(picture pic = currentpicture, conic g, pen p=defaultpen)
{ filldraw(pic, (path) g, p); }
// some geometry
pair foot(pair P, pair A, pair B) { return foot(triangle(A,B,P).VC); }
pair orthocenter(pair A, pair B, pair C) { return orthocentercenter(A,B,C); }
pair centroid(pair A, pair B, pair C) { return (A+B+C)/3; }
// cse5 abbreviations
path CP(pair P, pair A) { return circle(P, abs(A-P)); }
path CR(pair P, real r) { return circle(P, r); }
pair IP(path p, path q) { return intersectionpoints(p,q)[0]; }
pair OP(path p, path q) { return intersectionpoints(p,q)[1]; }
path Line(pair A, pair B, real a=0.6, real b=a) { return (a*(A-B)+A)--(b*(B-A)+B); }
// cse5 more useful functions
picture CC() {
picture p=rotate(0)*currentpicture;
currentpicture.erase();
return p;
}
pair MP(Label s, pair A, pair B = plain.S, pen p = defaultpen) {
Label L = s;
L.s = "$"+s.s+"$";
label(L, A, B, p);
return A;
}
pair Drawing(Label s = "", pair A, pair B = plain.S, pen p = defaultpen) {
dot(MP(s, A, B, p), p);
return A;
}
path Drawing(path g, pen p = defaultpen, arrowbar ar = None) {
draw(g, p, ar);
return g;
}
size(12cm);
void dc(pair x, pen p) {
pair y = intersectionpoints(circle((0,0),8),(0,0)--1000*x)[0];
filldraw(circle(x, abs(x-y)), opacity(0.1)+p, p);
filldraw(circle(conj(x), abs(x-y)), opacity(0.1)+p, p);
}
pair O1 = (0,0);
pair O2 = (5,0);
pair P1 = intersectionpoints(circle(O1,5),circle(O2,3+sqrt(3)))[0];
pair P2 = intersectionpoints(circle(O1,3),circle(O2,5+sqrt(3)))[0];
pair P3 = intersectionpoints(circle(O1,5),circle(O2,3-sqrt(3)))[0];
pair P4 = intersectionpoints(circle(O1,3),circle(O2,5-sqrt(3)))[0];
filldraw(circle(O1,8), opacity(0.1)+grey, black+1.8);
dc(P1,blue);
dc(P2,red);
dc(P3,darkgreen);
dc(P4,brown);
filldraw(circle(O1,2), opacity(0.4)+yellow, black+1.8);
filldraw(circle(O2,sqrt(3)), opacity(0.4)+yellow, black+1.8);
dot("$(0,0)$", (0,0), dir(-90));
dot("$(5,0)$", (5,0), dir(-90));