<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ## 3.9復雜圖形函數 復雜的畫圖函數利用2-D線性轉換能讓你畫出任意圖形。這個功能與Adobe? PostScript 語言實現的功能很相似,在X和Win32上,在畫線段之前所有的轉換頂點都是用整數表示,這就限制了畫圖的精確性。如果要畫比較精確的圖形,最好用OpenGL來畫。 ``` void fl_push_matrix() void fl_pop_matrix() ``` 保存和恢復當前的轉換,堆棧的最大深度為4 ``` void fl_scale(float x, float y) void fl_scale(float x) void fl_translate(float x, float y) void fl_rotate(float d) void fl_mult_matrix(float a, float b, float c, float d, float x, float y) ``` 在當前的轉換基礎上連接另外一個轉換。旋轉角度是度數不是弧度,逆時針旋轉。 ``` void fl_begin_line() void fl_end_line() ``` 開始和結束畫線 ``` void fl_begin_loop() void fl_end_loop() ``` 開始和結束畫一系列封閉的線 ``` void fl_begin_polygon() void fl_end_polygon() ``` 開始和結束畫多邊形并填充 ``` void fl_begin_complex_polygon() void fl_gap() void fl_end_complex_polygon() ``` 開始和結束畫一個復雜的多邊形并填充。這個多邊形可以是凹凸不同的,不連貫的,甚至中間有空心的。調用fl_gap()分開路徑。不必也是有害的如果在第一個頂點之前或最后一個頂點之后調用fl_gap()函數,在一行中多次調用也是不行的。 Fl_gap()只能用在fl_begin_complex_polygon()和fl_end_complex_polygon()之間。畫多邊形的輪廓,使用fl_begin_loop并用fl_end_loop和fl_begin_loop代替fl_gap(); ``` void fl_vertex(float x, float y) ``` 在當前路徑中增加一個頂點 ``` void fl_curve(float x, float y, float x1, float y1, float x2, float y2, float x3, float y3) ``` 在路徑中增加一系列的點畫Bezier 曲線。該曲線的末端是x,y和x3,y3。 ``` void fl_arc(float x, float y, float r, float start, float end) ``` 增加一系列的點在當前圓環的弧線上。在調用fl_arc()之前應用scale和rotate 可以得到橢圓的路徑。X,y是圓的中心,r是半徑。Fl_arc()從start角度畫弧直到end,按逆時針旋轉。如果end大于start則它是按照順時針轉 ``` void fl_circle(float x, float y, float r) ``` fl_circle等于fl_arc(…,0,360),但是更快,如果你在畫多邊形的時候用到 圓,則必須用fl_arc(). 文本的畫法 所有的文本都字體都是適用當前字體。現在還不明確在轉換情況下,位置或字符是否會改變 ``` void fl_draw(const char *, int x, int y) void fl_draw(const char *, int n, int x, int y) ``` 在窗口中畫出字符串,位置是靠左,接近底線 ``` void fl_draw(const char *, int x, int y, int w, int h, Fl_Align align, Fl_Image *img = 0, int draw_symbols = 1) void fl_measure(const char *, int &w, int &h, int draw_symbols = 1) int fl_height() ``` 得到當前字體的高度 ``` int fl_descent() float fl_width(const char*) float fl_width(const char*,int n) float fl_width(uchar) const char *fl_shortcut_label(ulong) ``` 返回按鈕或菜單的快捷鍵字符串
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看